杂记1

2016-04-27  本文已影响20人  纵我不往矣

链表和数组的区别

从逻辑结构来看

从内存存储来看

排序基本

排序分为两大类:内排序和外排序。

插入排序

1.从第一个元素开始,该元素可以认为已经被排序
2.取出下一个元素,在已经排序的元素序列中从中向前扫描
3.如果该元素(已排序)大于新元素,将该元素移到下一位置
4.重复步骤3,直到找到已排序的元素小于或等于新元素的位置
5.将新元素插入到该位置后
6.重复步骤2~5

冒泡排序

比较相邻的元素。如果第一个比第二个大,就交换他们两个。
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。
针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

快速排序

设定一个基准值(也就是轴)
将比轴小的值,移到轴的左边,形成左子数列
将比轴大的值,移到轴的右边,形成右子数列
分别对左子数列和右子数列做上述三个步骤(递归),直到左子数列或右子数列只剩一个值或没有数值

选择排序

希尔排序

堆排序

二叉树

⑴访问根结点;
⑵先序遍历根结点的左子树;
⑶先序遍历根结点的右子树。

⑴中序遍历根结点的左子树;
⑵访问根结点;
⑶中序遍历根结点的右子树。

⑴后序遍历根结点的左子树;
⑵后序遍历根结点的右子树。
⑶访问根结点;

构建一个队列专门用来储存二叉树节点指针,先把根节点入队,假设是A,对A元素进行访问,然后对A的左右孩子依次入队,假设B,C。A出队列,再是对B进行访问,同样将B的左右孩子入队列,B出对列······重复以上,知道队列为空。

哈希

在记录的关键字与记录的存储地址之间建立的一种对应关系叫哈希函数。
哈希函数是从关键字空间到存储地址空间的一种映象
哈希函数可写成:addr(ai)=H(keyi)
ai是表中的一个元素
addr(ai)是ai的存储地址
keyi是ai的关键字

应用哈希函数,由记录的关键字确定记录在表中的地址,并将记录放入此地址,这样构成的表叫哈希表。

又叫散列查找,利用哈希函数进行查找的过程叫哈希查找。

上一篇 下一篇

猜你喜欢

热点阅读