网传鹅厂面试题,英语单词拼写检查算法比如输入hello,却错误的输入了hellu,找出出错的字母感谢知乎知友@LeeShellay对词典中的每个词,逐刺逐字母拓展Trie,单词完结处结点用END符号标识END...
Python实现冒泡排序defbubbleSort(alist):forpassnuminrange(len(alist)-1,0,-1):foriinrange(passnum):...
classBinaryTree:def__init__(self,rootObj):self.key=rootObjself.leftChild=Nones...
实现一个二分查找输入:一个顺序list输出:待查找的元素的位置defbinarySearch(alist,item):first=0last=len(alist)-1whi...
构建树实现堆classBinHeap:def__init__(self):self.heapList=[0]self.currentSize=0插入新结点后必要...
构建二叉查找树(非平衡)classTreeNode:def__init__(self,key,val,left=None,right=None,parent=None):sel...
classAnagramDetection:先对两个字符串进行list化对字符串对应的两个list进行排序依次比较字符是否匹配defanagramSolution1(self,s1,...
构建二叉查找树(非平衡)classTreeNode:def__init__(self,key,val,left=None,right=None,parent=None):sel...
classNode:def__init__(self,initdata):self.data=initdataself.next=NonedefgetData(...
贪心法。Dijkstra的最短路径(时间复杂度O(n2));Prim求最小生成树邻接表存储时是O(n+e),图O(n2);关键路径及关键活动的求法。回溯法分支限界法分治法。分割、求解、合并。二分查找、归并排序、快速排序。动态规划。Fl...
生成合并段(run):读入文件的部分记录到内存->在内存中进行内部排序->将排好序的这些记录写入外存,形成合并段->再读入该文件的下面的记录,往复进行,直至文件中的记录全部形成合并段为止。外部合并:将上一阶段生成的合...
内部排序:全部数据可同时放入内存进行的排序。外部排序:文件中数据太多,无法全部调入内存进行的排序。插入类:直接插入排序。最坏情况是数据递减序,数据比较和移动量最大,达到O(n2),最好是数据是递增序,比较和移动最少为O(n)。趟数是固...
在记录的存储地址和它的关键字之间建立一个确定的对应关系;这样不经过比较,一次存取就能得到元素。哈希函数——在记录的关键字与记录的存储位置之间建立的一种对应关系。是从关键字空间到存储位置空间的一种映象。哈希表——应用哈希函数,由记录的关...
B_树B-树就是B树。m阶B_树满足或空,或为满足下列性质的m叉树:树中每个结点最多有m棵子树根结点在不是叶子时,至少有两棵子树除根外,所有非终端结点至少有⎡m/2⎤棵子树有s个子树的非叶结点具有n=s-1个关键字,结点的信息组...
顺序查找、折半查找、索引查找、分块查找是静态查找,动态查找有二叉排序树查找,最优二叉树查找,键树查找,哈希表查找静态查找表顺序表的顺序查找:应用范围:顺序表或线性链表表示的表,表内元素之间无序。查找过程:从表的一端开始逐个进行记录的关...