- 博客(12)
- 收藏
- 关注
原创 排序算法总结
快排:时间复杂度最差:O(n^2),平均O(nlgn) public static void myQuickSort(Integer[] a, int start, int end){ //a:待排序数组 //start:待排序起点下标 //end:待排序终点下标 if (start >= end) return;...
2017-11-29 20:06:52 271
原创 java实现堆排序
堆是一个数组,被看成一个近似完全二叉树。举例说明: 堆的性质:1.已知元素在数组中的序号为i 其父节点的序号为 i/2的整数 其左孩子节点的序号为2*i 其右孩子节点的序号为2*i+1 2.堆分为最大堆和最小堆 在最大堆中,要保证父节点的值大于等于其孩子节点的值 在最小堆中,要保证父节点的值小于等于其孩子节点的值java实现堆排序pu
2017-11-24 21:20:43 472
原创 java中的代码点和代码单元
背景 在设计Java时决定采用16位的Unicode字符集,因为当时只用不到65536一半的大小就可以存放下Unicode1.0版本的字符集。但是十分遗憾,一段时间之后Unicode字符数量超过了65536个,显然16位的char类型已经不能满足描述所有的Unicode字符的需要了。因此出现了代码点。 代码点 指与一个编码表中的某个字符对应的代码值。在Unicode标准中,代码点采用十六进
2017-10-09 11:24:16 733
原创 回归算法——python实现线性回归
算法简介给定数据集D={(x1,y1),(x2,y2),…,(xm,ym)},一共有m个样本,其中每个样本有d个属性,即xi = (xi1,xi2,…,xid)。线性回归是试图学到一个线性模型 f(x) = w1*x1+w2*x2+…+wd*xd + b以尽可能准确的预测实值输出标记。 其中w=(w1,w2,…,wd), w和b是通过学习之后,模型得以确定。 w和b的确定是通过损失函数确定的:
2017-05-23 21:59:30 13046 1
原创 聚类算法——python实现SOM算法
算法简介SOM网络是一种竞争学习型的无监督神经网络,将高维空间中相似的样本点映射到网络输出层中的邻近神经元。训练过程简述:在接收到训练样本后,每个输出层神经元会计算该样本与自身携带的权向量之间的距离,距离最近的神经元成为竞争获胜者,称为最佳匹配单元。然后最佳匹配单元及其邻近的神经元的权向量将被调整,以使得这些权向量与当前输入样本的距离缩小。这个过程不断迭代,直至收敛。网络结构:输入层和输出层(或竞争
2017-05-18 10:24:50 25650 19
原创 聚类算法——python实现层次聚类(AGNES)
算法思想层次聚类是在不同层次上对数据进行划分,从而形成树状的聚类结构。 AGNES算法是自底向上的层次聚类算法。开始时将数据集中的每个样本初始化为一个簇,然后找到距离最近的两个簇,将他们合并,不断重复这个过程,直达到到预设的聚类数目为止。 计算距离的三个公式: AGNES算法根据上面个三个不同的公式,相应的被称为均链接,单链接和全链接。 算法步骤如下:将数据集中的每个样本初始化
2017-05-15 20:39:35 36201 1
原创 聚类算法——python实现密度聚类(DBSCAN)
算法思想基于密度的聚类算法从样本密度的角度考察样本之间的可连接性,并基于可连接样本不断扩展聚类簇得到最终结果。 几个必要概念: ε-邻域:对于样本集中的xj, 它的ε-邻域为样本集中与它距离小于ε的样本所构成的集合。 核心对象:若xj的ε-邻域中至少包含MinPts个样本,则xj为一个核心对象。 密度直达:若xj位于xi的ε-邻域中,且xi为核心对象,则xj由xi密度直达。 密度可达:若样
2017-05-15 17:41:07 29496 19
原创 聚类算法——python实现学习向量量化(LVQ)算法
算法思想学习向量量化算法和K均值算法类似,是找到一组原型向量来聚类, 每一个原型向量代表一个簇,将空间划分为若干个簇,从而对于任意的样本,可以将它划入到与它距离最近的簇中。特别的是LVQ假设数据样本带有类别标记,可以用这些类别标记来辅助聚类。 大致思想如下: 1.统计样本的类别,假设一共有q类,初始化为原型向量的标记为{t1,t2,……,tq}。从样本中随机选取q个样本点位原型向量{p1, p2
2017-05-13 13:50:23 8453 2
原创 聚类算法——python实现k-means算法
算法思想通俗的说,就是把一些样本按照相似度分成k类。给定样本集D={x1, x2, x3, ……, xm}, 划分为k类得到集合C = {C1, C2, ……, Ck},(其中Ci,1<=i<=k, 是包含若干个样本xi, 1<=i<=m, 的集合,使得平方误差最小化,即其中 ui是Ci类中所有样本的均值向量。但是最小化E是一个NP难问题, 所以采用了迭代优化的方式来近似求解。大致思想如下:从样
2017-05-11 15:54:09 1285
原创 2.2整数和浮点数
这里只是记录一些零散的知识无符号数溢出判断 sum = x + y; 如果 sum < x (或sum < y),则溢出补码溢出判断 sum = x + y; 如果x > 0, y > 0, sum <= 0, 发生正溢出 如果x < 0,y < 0, sum >= 0, 发生负溢出补码除法的舍入(向0舍入) x/2^k x为正数时向下舍入;x为负数时向上舍
2017-03-27 17:24:43 516
原创 2.1信息存储
2.1信息存储从这篇笔记开始写csapp的笔记,希望可以坚持下去。字长 每台计算机都有一个字长,指明指针数据的标称大小。 32位机器字长为32位,64位机器字长为64位。 数据类型 32位机器字节数 64位机器字节数 char 1 1 short 2 2 int 4 4 long 4 8 char * 4 8 floa
2017-03-27 11:58:54 333
原创 android实现课程表界面
android实现课程表界面这是我第一次写博客,也是刚开始学习android,做了一个课程表界面的小练习。做的过程中遇到了一些问题也参考了许多人的解决方法,希望在这里总结下,就当做学习笔记。如果能对那些像我一样的初学者有一点点帮助就更好啦,要是其中有错误还望赐教,哈哈~~~目录android实现课程表界面目录界面展示课程表界面布局java代码中动态添加按钮自定义AlertDialog界面展
2015-12-21 21:32:57 20688 42
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人