随笔分类 -  数据结构

摘要:HashTable-散列表/哈希表,是根据关键字(key)而直接访问在内存存储位置的数据结构。 它通过一个关键值的函数将所需的数据映射到表中的位置来访问数据,这个映射函数叫做散列函数,存放记录的数组叫做散列表。 构造哈希表的几种方法1. 直接定址法--取关键字的某个线性函数为散列地址,Hash(Ke 阅读全文
posted @ 2016-07-01 21:16 _in_the_way 阅读(1247) 评论(0) 推荐(0)
摘要:1.计数排序 2.基数排序 阅读全文
posted @ 2016-06-16 12:10 _in_the_way 阅读(187) 评论(0) 推荐(0)
摘要:定义:合并排序就是通过将两个有序的序列合并为一个大的有序的序列的方式来实现排序。 合并排序是一种典型的分治算法:首先将序列分为两部分,然后对每一部分进行循环递归的排序,然后逐个将结果进行合并。 合并排序最大的优点是它的时间复杂度为O(nlgn)。他还是一种稳定性排序,也就是相等的元素在序列中的相对位 阅读全文
posted @ 2016-06-16 11:46 _in_the_way 阅读(324) 评论(0) 推荐(0)
摘要:1.冒泡排序(时间复杂度为 O(N2)) 原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换, 这样一趟过去后,最大或最小的数字被交换到了最后一位;重复此动作直到排好序为止; 先来cv一个动图看看效果: 这里奉上一篇关于冒泡排序的博文(超赞): http://blog.csdn.n 阅读全文
posted @ 2016-06-10 17:34 _in_the_way 阅读(310) 评论(0) 推荐(0)
摘要:#pragma once #include"List.h" //1.逆序打印单链表 template<class T> void List<T>::PrintTailToHead(Node * pHead) { if (pHead == NULL) return; PrintTailToHead(p 阅读全文
posted @ 2016-06-09 22:18 _in_the_way 阅读(181) 评论(0) 推荐(0)
摘要:二分查找法: 二分查找法主要是解决在“一堆数中找出指定的数”这类问题。 而想要应用二分查找法,这“一堆数”必须有一下特征: 存储在数组中 有序排列 所以如果是用链表存储的,就无法在其上应用二分查找法了。(曽在面试被问二分查找法可以什么数据结构上使用:数组?链表?) 至于是顺序递增排列还是递减排列,数 阅读全文
posted @ 2016-05-17 12:28 _in_the_way 阅读(1484) 评论(0) 推荐(0)
摘要:一、选择排序 原理: 选择排序很简单,他的步骤如下:1.从左至右遍历,找到最小(大)的元素,然后与第一个元素交换。2.从剩余未排序元素中继续寻找最小(大)元素,然后与第二个元素进行交换。3.以此类推,直到所有元素均排序完毕。之所以称之为选择排序,是因为每一次遍历未排序的序列我们总是从中选择出最小的元 阅读全文
posted @ 2016-05-16 10:30 _in_the_way 阅读(209) 评论(0) 推荐(0)
摘要:堆: 堆数据结构是一种数组对象,它可以被视为一棵完全二叉树结构。 堆结构的二叉树存储是 最大堆:每个父节点的都大于孩子节点。 最小堆:每个父节点的都小于孩子节点。 堆的应用之优先级队列: 测试: 堆的应用之二,堆排序 阅读全文
posted @ 2016-05-15 19:13 _in_the_way 阅读(216) 评论(0) 推荐(0)
摘要:并查集:1.将N个不同的元素分成一组不相交的集合。 2.开始时,每个元素就是一个集合,然后按规律将两个集合进行合并。 阅读全文
posted @ 2016-05-13 17:39 _in_the_way 阅读(144) 评论(0) 推荐(0)
摘要:二叉搜索树的简介: 二叉搜索树通常采取二叉链作为二叉搜索树的存储结构。中序遍历二叉排序树可得到一个关键字的有序序列,一个无序序列可以通过构造一棵二叉排序树变成一个有序序列,构造树的过程即为对无序序列进行排序的过程。每次插入的新的结点都是二叉排序树上新的叶子结点,在进行插入操作时,不必移动其它结点,只 阅读全文
posted @ 2016-05-12 12:48 _in_the_way 阅读(295) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2016-05-10 11:49 _in_the_way 阅读(21) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2016-05-10 11:46 _in_the_way 阅读(54) 评论(0) 推荐(1)
只有注册用户登录后才能阅读该文。
posted @ 2016-05-08 23:16 _in_the_way 阅读(24) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2016-05-06 11:46 _in_the_way 阅读(4) 评论(0) 推荐(1)
摘要:1.位图的介绍: 位图就是通过将数组下标与应用中的一些值关联,数组中该下标所指定的位置上的元素可以用来标识应用中值的情况(是否存在 or 数目 or 。。。)。 位图中的值可以是计数、标识(如图)。 2.位图的应用: 1.给40亿个不重复的unsigned int的整数,没有排过序,然后再给一个数, 阅读全文
posted @ 2016-05-04 23:26 _in_the_way 阅读(207) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2016-04-04 12:17 _in_the_way 阅读(7) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2016-04-03 12:15 _in_the_way 阅读(11) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2016-04-02 12:14 _in_the_way 阅读(8) 评论(0) 推荐(1)
只有注册用户登录后才能阅读该文。
posted @ 2016-03-03 12:02 _in_the_way 阅读(6) 评论(0) 推荐(1)
只有注册用户登录后才能阅读该文。
posted @ 2016-03-02 12:05 _in_the_way 阅读(13) 评论(0) 推荐(1)