算法
文章平均质量分 63
zhangchao19890805
这个作者很懒,什么都没留下…
展开
-
【191】Java8在大比例尺小范围地图上,根据wgs84坐标系的经纬度计算两个点之间的方向和距离
方向一共分东、南、西、北、东北、西北、西南、东南共八个方向。以输入的第一个点为原点,绕此点一周,每个方向占45度。如果第二个点和第一个点的线段落在对应的角度范围内,就是对应的方向。设第一个点是A,第二个点是B。我以第一个点A为原点,点A所在的纬度线为x轴,点A所在的经度线为y轴,可以把地图划分成四个象限。在每个象限内,第二个点B和第一个点A之间的线段与y轴的角度决定了第二个点的方向。第一个点是A,第二个点是B,如图所示,B在A的东北方向。上图中以第三象限为例,标记出了对应的角度和方向的关系。原创 2023-11-10 09:55:53 · 908 阅读 · 0 评论 -
【190】Java8利用红黑树实现Map
每个节点要么是红色,要么是黑色,必须二选一。根节点是黑色。每个叶子节点是黑色。叶子节点用空节点表示。红色节点的两个子节点都必须是黑色的。对于每个节点,从该节点到后代叶子节点的所有简单路径都包含相同数量的黑色节点。原创 2023-09-19 17:35:38 · 274 阅读 · 0 评论 -
【188】Java8利用AVL树实现Map
AVL树又被叫做平衡二叉搜索树、平衡二叉树。AVL是其发明者的首字母缩写。这篇文章中,AVLTreeMap 类集成了 java.util.Map 接口,并利用 AVL 树结构实现了 Map 接口的所有方法。本文还给出了测试代码。原创 2023-07-31 15:02:37 · 226 阅读 · 0 评论 -
【186】Java8根据YUV颜色编码方法将彩色图片转成灰度图(即平常所指的黑白图片)
YUV采用明亮度和色度来表示像素颜色。其中,Y 表示明亮度(Luminance、Luma),而 U 和 V 表示色度(Chrominance、Chroma)。YUV多用于视频,如果每个像素只用Y,不用UV,那么就是灰度图。在黑白电视机和彩色电视机共存的年代,YUV被用来兼容黑白电视机和彩色电视机的信号。在上面三个等式中,如果把YUV视为常量,RGB视为未知数,那么可以把上面三个等式看作三元一次方程组。RGB是使用红、绿、蓝三原色的方式来编码像素的颜色。RGB和YUV是两种不同的色彩编码方法。原创 2023-04-19 22:27:24 · 410 阅读 · 0 评论 -
【182】Java8利用二叉查找树实现Map
本文利用二叉查找树写了一个Map,用来保存键值对。原创 2023-01-09 15:29:10 · 607 阅读 · 0 评论 -
【181】Java8实现单线程外部排序
自己用Java8实现的一种外部排序方法原创 2023-01-04 00:40:54 · 311 阅读 · 0 评论 -
【180】Java用堆实现从列表中获取第k小(或大)的元素
本文讨论的是在不改变用户输入的列表前提下,按照用户输入的顺序,输出第k个元素。其中k是从0开始计算。原创 2022-11-08 23:38:03 · 405 阅读 · 0 评论 -
【179】Java实现堆排序
本文讲解了堆排序的实现方式。并且把堆排序和冒泡排序放在一起比较了效率。原创 2022-10-30 22:08:14 · 381 阅读 · 0 评论 -
【135】TensorFlow利用神经网络学习XOR(异或)并部署成java代码
本文python代码使用 python 3。本文参考了《深度学习》第107页,6.1 实例:学习XORXOR 函数也称为异或。输入两个布尔型的变量 x1 和 x2 。当 x1 和 x2 不相同的时候,返回True。当 x1 和 x2 相同的时候返回 False。为了方便计算机处理,我用 1 表示True,0 表示False。我创建一个CSV文件XOR_train.csv,里面内容就是异或的...原创 2019-04-13 22:25:05 · 543 阅读 · 0 评论 -
【120】TensorFlow 从CSV文件中读取数据并训练线性回归模型(面向新手)
在您阅读本文之前: 开发环境参照 https://blog.csdn.net/zhangchao19890805/article/details/78781003正文开始。学习 TensorFlow 让我的思维发生了变化。计算机本质上是一种数学的工具,而我在学习编程的时候,思维也不可避免地收到了影响。传统的编程思想,常常认为程序就应该像数学定理或者数学函数一样,给出一个确定的结果。这...原创 2018-08-02 18:21:41 · 16201 阅读 · 6 评论 -
【100】深度学习读书笔记:P44函数性质的证明
前提知识log x 表示 x 的自然对数。也有人写成 ln x ,或者 log e x。exp (x) 表示 ex 。 我们需要先了解一下基本初等函数的导数公式:公式一:常数的导数是零。 公式二:若 y = xn,y’=nxn-1。 公式三: (sin x)’ = cos x 公式四:(cos x)’ = -sin x 公式五: (ax)’ = ax log a 公式六: (ex)’原创 2017-12-17 20:40:37 · 593 阅读 · 0 评论 -
【101】java多叉树广度优先搜索算法,搜索文件和文件夹
我用了多叉树广度优先搜索,遍历了文件的树形结构,然后用回调方法判断文件或文件夹是否符合搜索条件。把结果返回到一个集合中。演示的例子分成三个文件:FileFilter、SearchFileUtils和Main。下面逐个给出代码。FileFilter:package zhangchao;import java.io.File;/** * * @author 张超 * 文件过滤的接口。Search原创 2017-12-31 03:02:28 · 1102 阅读 · 2 评论 -
【095】深度学习读书笔记:P30证明行列式等于方阵特征值的乘积
建议读者先阅读这篇文章:【092】韦达定理在一元n次方程中的推广 搞明白什么是韦达定理。行列式和特征值之间是有着特殊关系的。这种关系就是:行列式等于方阵特征值的乘积。本文给出了证明。原创 2017-11-12 23:35:23 · 13925 阅读 · 2 评论 -
【079】利用“剪叶子”算法实现树形结构的搜索功能,用Vue.js实现
业务场景工作中碰到这样的一个场景:需要对一个树形结构进行搜索,凡是匹配的节点都要保留。如果这个匹配的节点存在父节点,那么不论这个父节点是否匹配搜索内容,都要保留,并按照树形结构展示出来。如果一个节点既不匹配搜索内容,同时也没有匹配搜索内容的子节点,那么该节点就不再保留。效果如下面这个gif动画所示:数据结构场景中的数据结构类似这种形式:export default func原创 2017-08-06 17:48:27 · 6845 阅读 · 7 评论 -
【083】深度学习读书笔记:P26特征分解的证明
《深度学习》第26页给出了特征分解的公式,本文补上了公式的证明过程。原创 2017-09-08 04:37:19 · 1058 阅读 · 0 评论 -
【085】深度学习读书笔记:P27正定矩阵的两种定义
推论1、2、3 讨论了我对向量由向量组线性表示、线性方程组和n维空间这三个概念之间的思考与理解。本文中,推论2和推论3都是由推论1,按照从特殊到一般的思路证明出来的。推论4讨论的是本文主题,正定矩阵的两种定义。直接应用了推论1.原创 2017-09-24 19:13:05 · 447 阅读 · 0 评论 -
【082】深度学习读书笔记:P24奇异方阵的两种定义
读《深度学习》这本书,在第24页提到了一个定义:“一个列向量线性相关的方阵被称为奇异的”。我身边还有一本任明荣、张洪谦主编的《线性代数》。这本书里奇异方阵的定义是:“设 A 为 n 阶方阵,当|A|=0时,称A为奇异方阵(退化方阵)”。其实这两种奇异方阵是等价的。也就是说,对于一个n阶方阵A,|A|=0 等价于 A是一个列向量线性相关的方阵。可以证明这种等价关系。原创 2017-09-03 16:12:52 · 963 阅读 · 0 评论 -
【090】深度学习读书笔记:P30证明对角方阵的行列式等于方阵对角元素的乘积
求证:对角方阵的行列式等于方阵对角元素的乘积证明: 不妨设A是n阶对角方阵。n是正整数,并且n大于等于2 。A 的行列式是 |A|。 令 aij表示方阵 A 中的第 i 行,第 j 列的元素。显然,令 Aij 表示元素 aij 的代数余子式。 题目可以描述成求证 |A| = a11a22···ann 存在两种情况。1. A的对角线元素至少有一个为0 。2. A的对角线元素全都不为0 。第原创 2017-10-06 16:29:04 · 5107 阅读 · 0 评论 -
【084】深度学习读书笔记:P26正交矩阵
本文讨论了正交矩阵的一些特点。存在一些和正交矩阵相关的命题。本文理清了这些命题的等价关系。原创 2017-09-13 06:04:11 · 819 阅读 · 0 评论 -
【087】深度学习读书笔记:P28奇异值分解的证明
一、推论部分为了更好的写出我们的证明过程,我们需要提炼出一些推论。推论1:对于任意一个m行n列的矩阵A,AAT是对称矩阵,并且ATA也是对称矩阵。证明: 因为 (AAT)T = (AT)T AT = AAT,所以 AAT是对称方阵。 因为 (ATA)T = AT(AT)T = ATA, 所以 ATA 是对称方阵。推论2:已知m行n列矩阵A 和 n行m列矩阵B,m阶方阵 AB原创 2017-09-28 22:55:57 · 293 阅读 · 0 评论 -
【088】深度学习读书笔记:P29证明迹运算描述Frobenius范数
已知矩阵A,求证 。证明:设A是 m 行 n 列的矩阵。A 的行向量是。那么:因为迹运算返回的是矩阵对角线元素的和,所以:是矩阵 A 第 i 行的行向量。 是矩阵 A 第 i 行行向量的內积。那么:根据Frobenius 范数的定义:原创 2017-10-04 10:56:10 · 2636 阅读 · 0 评论 -
【089】深度学习读书笔记:P29证明迹Tr(AB)=Tr(BA)
已知m行n列矩阵A,n行m列矩阵B。Tr表示迹运算。求证 Tr(AB)=Tr(BA) 。原创 2017-10-05 09:15:43 · 10530 阅读 · 1 评论 -
【093】深度学习读书笔记:P29证明矩阵特征值的和等于矩阵的迹
方法一: 利用韦达定理证明建议读者先阅读这篇文章:【092】韦达定理在一元n次方程中的推广 搞明白什么是韦达定理。按照特征值的定义: A =λλ - A = (λI-A) = 其中 I 表示单位矩阵。按照特征值的定义, 不能是零向量。按照克莱姆法则,若|λI-A|≠0,则 必然是零向量。所以|λI-A|=0。不妨设 ,显然 即 = 0求特征值,可以把 λ 看做未知数,行列式可以化作原创 2017-10-09 23:38:02 · 11445 阅读 · 0 评论 -
【074】Javascript多叉树的递归遍历和非递归遍历
演示之前的准备工作演示项目的文件结构:index.html jsonData.js recurrenceTree.js noRecurrenceTree.js解释一下各个文件:index.html 是用来演示的 HTML 文件。 jsonData.js 里面存储着多叉树的JSON数据。 recurrenceTree.js 递归算法遍历树。 noRecurrenceTree.js 非递归算原创 2017-05-04 10:49:01 · 28767 阅读 · 3 评论