#数据结构与算法

排序算法整理(python version)

importrandomimporttimedefbubble_sort(a):n=len(a)whilen>1:foriinrange(n-1):ifa[i]>a[i+1]:temp=a[i]a[i]=a[i+1]a[i+1]=tempn+=-1returnadefinsert_sort(a):n=len...

c#-SimHash匹配相似-算法

使用场景:Google的simhash算法//通过大量测试,simhash用于比较大文本,比如500字以上效果都还蛮好,距离小于3的基本都是相似,误判率也比较低。//从我的经验,如果我们假定N是每个块的大小,M是重叠的字符的数目,N=4和M=3是最好的选择  publicclassSimHashAnalyser:IAn...

c#-冒泡排序-算法

冒泡排序(BubbleSort)冒泡排序算法的运作如下:1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。3.针对所有的元素重复以上的步骤,除了最后一个。4.持续每次对越来越少的元素重复上面的步骤,直到没有任何...
代码星球 代码星球·2020-08-15

c#-二分查找-算法

折半搜索,也称二分查找算法、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。A搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;B如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。C如果在某一步骤数组为空,则代表找不到。...
代码星球 代码星球·2020-08-15

c#-快速排序-算法

 快速排序使用分治法(Divideandconquer)策略来把一个串行(list)分为两个子串行(sub-lists)。步骤为:1.从数列中挑出一个元素,称为"基准"(pivot),2.重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区退...
代码星球 代码星球·2020-08-15

一个难懂的聚簇分类算法

1、抽取全部图像的surf特征(每个图像的特征行不固定,但是列是固定的70)2、将图像分为两组,一组训练,一组测试3、将训练图像全部合并为一个大矩阵,并将矩阵聚簇为30个特征。4、将每一个图像代入聚簇函数,推测每一个图像属于若干个分组(若不够30个分组,后面补1)5、每个图像就表示为30个特征向量6、送入逻辑分类进行分...

Python 标准库 -> Pprint 模块 -> 用于打印 Python 数据结构

使用pprint模块pprint模块(prettyprinter)用于打印Python数据结构.当你在命令行下打印特定数据结构时你会发现它很有用(输出格式比较整齐,便于阅读).---------------------------------------------------------------importppr...

K-NN回归算法

fromsklearn.datasetsimportload_irisimportnumpyasnpimportmatplotlib.pyplotaspltiris=load_iris()iris_data=iris.datairis_target=iris.targetprint(iris.feature_names...
代码星球 代码星球·2020-08-15

python 递归,深度优先搜索与广度优先搜索算法模拟实现

递归:即一个函数调用了自身,即实现了递归凡是循环能做到的事,递归一般都能做到!  1、写出临界条件2、找出这一次和上一次关系3、假设当前函数已经能用,调用自身计算上一次的结果,再求出本次的结果#概述'''递归:即一个函数调用了自身,即实现了递归凡是循环能做到的事,递归一般都能做到!'''#写递归的过...

彻底理解一致性哈希算法(consistent hashing)

转载请说明出处:http://blog.csdn.net/cywosp/article/details/23397179  一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hotspot)问题,初衷和CARP十分类似。一致性哈希修正了...

nginx负载均衡算法

NGINX配置负载均衡主要是在nginx.conf文件中里upstream模块1、upstream模块应放于nginx.conf配置的http{}标签内2、upstream模块默认算法是wrr(权重轮询weightedround-robin)Nginx的upstream支持5种分配方式,下面将会详细介绍,其中前三种为N...
代码星球 代码星球·2020-08-13

排序算法——插入排序

递归算法切记切记退出的条件,比如快速排序中的if(start>=end)return;常见排序算法的复杂度: 插入排序,实际上是子序列依次向完整序列的增长过程,每次增长主要任务就是为哨兵(新增加的元素)寻找位置!packagecom.pt;importstaticorg.junit.Assert.*;i...
代码星球 代码星球·2020-08-12

【python】面试常考数据结构算法

这里整理的都是基础的不能再基础的算法,目的就是进行一个回忆,同时作为剑指offer的一个补充~嘿嘿~查找算法二分查找#实现一个二分查找#输入:一个顺序list#输出:待查找的元素的位置defbinarySearch(alist,item):first=0last=len(alist)-1whilefirst<=l...

面试中的排序算法总结

前言  查找和排序算法是算法的入门知识,其经典思想可以用于很多算法当中。因为其实现代码较短,应用较常见。所以在面试中经常会问到排序算法及其相关的问题。但万变不离其宗,只要熟悉了思想,灵活运用也不是难事。一般在面试中最常考的是快速排序和归并排序,并且经常有面试官要求现场写出这两种排序的代码。对这两种排序的代码一定要信手拈...

【数据结构】冒泡排序

1、c语言实现//算法实现原则//例如五个元素,就要排序4趟//每趟都是相邻的两个元素再比较//每趟都会把最大的那个元素往最后移voidbubbleSort(intarr[],intlen){for(intj=0;j<len-1;j++){intswap;for(inti=0;i<len-1-j;i++)...
代码星球 代码星球·2020-08-10
首页上一页...5657585960...下一页尾页