一.堆的介绍
堆有如下特点的二叉树:
1.他是完全的二叉树。也就是说,除了树的最后一层布需要时满的,其他的每一层从左到右都是满的.(如下图的完全二叉树跟不完全二叉树)
2.它常常用一个数组在实现。(如下图显示了堆它与数组之间的关系。堆在存储器中的表示是数组;堆只是概念上的表示。注意树是完全二叉树,...
分类:
编程语言 时间:
2015-05-05 21:46:49
阅读次数:
195
PS:上网再次看了一下数据库关于索引的一些细节...感觉自己学的东西有点少...又再次的啃了啃索引....学习内容:索引查询优化...上一章说道的索引还不是特别的详细,再补充一些具体的细节...1.B-Tree索引...B-tree结构被称为平衡多路查找树...其数据结构为: 这就是其数据结构图。。...
分类:
数据库 时间:
2015-05-05 21:27:23
阅读次数:
240
基本思想:
基本思想主要就是两点:构建初始化堆和排序。
以构建最大堆为例,可以分为以下几个步骤:
1、将初始待排序序列(R0,R1,R2....Rn-1)构建成最大堆,此堆为初始的无序堆。
2、将堆顶元素R0与最后一个元素Rn-1交换,此时得到一个新的无序序列(R0,R1,R2....Rn-2)和新的有序序列Rn-1,且满足R[0,2...n-2]
3、由于交换后新的堆顶R0可能违反最大...
分类:
编程语言 时间:
2015-05-05 19:50:19
阅读次数:
171
基本思想:
冒泡排序是通过交换两个元素实现的,其思想是:
第一趟将待排序序列(A[0]~A[n-1])从前往后,两两相邻元素进行比较,若后者小,则交换,比较n-1次;
第一趟结束后,最大元素被交换到A[n-1]处(即沉底),下一趟排序只需要在(A[0]~A[n-2])中进行;
若在某趟排序中,未交换元素,说明子序列已经有序,则不在进行下一趟排序。该方法最多进行n-1趟。
冒泡排序...
分类:
编程语言 时间:
2015-05-05 19:40:20
阅读次数:
139
之所以会系统的推荐书籍,是因为自考研计算机专业课变成统考科目之后,计算机专业课统考便不再指定教材。为了让考研考生们能在找复习书籍的时候不走弯路,在此给大家推荐四组一共八本考研书籍。数据结构方面的:1. 教材:《数据结构》(严蔚敏,清华大学出版社)2. 辅导书:《算法与数据结构考研试题精析(第二版)》...
分类:
其他好文 时间:
2015-05-05 19:14:50
阅读次数:
235
一、文件共享 内核使用三种数据结构表示打开的文件,它们之间的关系决定了在文件共享方面一个进程对另一个进程可能产生的影响。 1、每个进程在进程表中都有一个记录项,记录项中包含有一张打开文件描述表 2、内核为所有打开文件维持一张文件表 3、每个打开文件都有一个v节点结构,v节点包含了文件类型和对...
分类:
系统相关 时间:
2015-05-05 18:54:50
阅读次数:
162
神级数据结构维护题。。。Splay练手题。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i q;inline void update(int x){ i...
分类:
其他好文 时间:
2015-05-05 18:53:57
阅读次数:
107
引用类型是一种数据结构,用于将数据和功能组织在一起。 Object是使用最多的引用类型,可以直接使用new来定义一个实例,也可以用对象字面量。 此处重点总结一下Array类型的食用方法。 声明一个Array类型有以下几种方法://构造函数法var myArray = new Array()...
分类:
编程语言 时间:
2015-05-05 18:33:07
阅读次数:
140
数据结构模版题【连这么神的题都沦为模版题了Orz对数离散化后树状数组套权值线段树。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; il=t->r=blan...
分类:
其他好文 时间:
2015-05-05 18:19:19
阅读次数:
98
XAML.CS代码: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 using...