~$ 存档

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  514 随笔 :: 26 文章 :: 15 评论 :: 62万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

随笔分类 -  Data Structure

1 2 下一页

摘要:○⇢○⇢○⇢○⇢NULL 这里先不关注怎么实现,而是考察一下链表有多少种操作的可能。基本操作:创建,插入,删除,遍历,合并...等等 阅读全文
posted @ 2017-02-12 01:28 LuoTian 阅读(219) 评论(0) 推荐(0) 编辑

摘要:删除分为两种可能:1.只有左子树,或右子树,或叶结点。 叶结点、只有右子树的情况相似。2.有左子树和右子树的情况 先看完整代码: int Delete(Tree &p) { Tree q,s; if(p->right==NULL)/*只有左子树*/ { q=p; p=p->left; free(q) 阅读全文
posted @ 2016-03-21 18:46 LuoTian 阅读(549) 评论(0) 推荐(0) 编辑

摘要:二叉排序树,又称为二叉查找树。它或者是一棵空树,或者具有下列性质:1.若它的左子树不为空,则左子树上所有结点的值均小于它的根结点的值2.若它的右子树不为空,则右子树上所有结点的值均大于它的根结点的值3.它的左、右子树也分别为二叉排序树 简言而之:中序遍历就一定会得到从小到大排列的序列! 查找操作:首 阅读全文
posted @ 2016-03-21 09:25 LuoTian 阅读(673) 评论(0) 推荐(0) 编辑

摘要:主要对mid的计算进行改进,未改进之前的计算公式:改进后的公式:修改代码后: 阅读全文
posted @ 2016-03-21 07:04 LuoTian 阅读(570) 评论(0) 推荐(0) 编辑

摘要:来源于书本,这个小技巧还是记录一下,其实它所表达的意思就是,for循环和while循环的一点微妙区别。在for循环中,比如: 比较、自增、加上边界的判定,一共需3步,而while循环,则只需要两步,减去了边界判定的一步。 阅读全文
posted @ 2016-03-21 06:19 LuoTian 阅读(262) 评论(0) 推荐(0) 编辑

摘要:这种查找方法要求查找表的数据是线性结构保存,并且还要求查找表中的数据是按关键字从小到大有序排列的。二分查找是一种递归过程,每折半查找一次,可使查找范围缩小一半,当查找范围缩小到只剩下一个元素,而仍不等于关键字,说明查找失败,在最坏的情况下,折半查找所需要的比较次数为O(nlog2n).. 阅读全文
posted @ 2016-03-21 05:32 LuoTian 阅读(341) 评论(0) 推荐(0) 编辑

摘要:题目:求字符串[(())]的括号是否匹配,这个题相对比较简易,也记录一下。思路,左括号就入栈,遇到右括号就出栈一个元素进行匹配判定,构造一个switch。同时,设置一个监视flag,初始置1,一旦不匹配就将之置为0,也就是以后就不用再比较了。 阅读全文
posted @ 2016-03-20 08:37 LuoTian 阅读(668) 评论(0) 推荐(0) 编辑

摘要:/*-------完整代码----映雪-------*/ #include using namespace std; void sort(int left,int right,int a[]) { int i,j,t,temp; if(left>right) return; temp=a[left]; i=left; j=right; ... 阅读全文
posted @ 2016-03-17 07:50 LuoTian 阅读(213) 评论(0) 推荐(0) 编辑

摘要:图由数据元素和连接数据元素的线构成。在图中数据元素称为顶点(Vertex),连接顶点的线称为边(Edge)。一个图是由顶点集合和边集合组成的。一般记为形式:G=(V,E),或G=(V(G),E(G))。 1.有向图和无向图无向图:边没有方向。例(V1,V2),也可写为(V2,V1)。有向图:边有方向 阅读全文
posted @ 2016-03-16 22:59 LuoTian 阅读(475) 评论(0) 推荐(0) 编辑

摘要:/* 完整代码@映雪 */ #include <iostream> using namespace std; #define change(x,y); \ a[x]=a[x]+a[y];\ a[y]=a[x]-a[y];\ a[x]=a[x]-a[y]; void f(int a[],int l,i 阅读全文
posted @ 2016-03-12 02:24 LuoTian 阅读(1154) 评论(0) 推荐(0) 编辑

摘要:选择排序的基本思想:对n个记录进行扫描,选择最小的记录,将其输出,接着在剩下的n-1个记录中扫描,选择最小的记录将其输出,不断重复这个过程,直到只剩一个记录为止... 简单选择排序法类似人的排序习惯:从数据中选择最小(或最大)的一个数据,然后将该数与第1个数交换,接下来从剩下数据中选择最小(或最大) 阅读全文
posted @ 2016-03-10 16:16 LuoTian 阅读(227) 评论(0) 推荐(0) 编辑

摘要:冒泡排序法是一种相邻数据交换的排序方法。基本思想是:对待排序记录关键字从后往前(逆序)进行多遍扫描,当发现相邻两个关键字的次序与排序要求的规则不符时,就将这两个记录进行交换。这样,关键字较小的记录将逐渐从后面向前面移动,就像气泡在水中向上浮一样。 改进算法:设置一个标志变量flag,在每一遍扫描之前 阅读全文
posted @ 2016-03-10 15:25 LuoTian 阅读(356) 评论(0) 推荐(0) 编辑

摘要:除此之外,并集的这个思路还可以求两个集合的相同元素,例,A={1,3,5,7},B={2,3,7},求两数组的相同元素 阅读全文
posted @ 2016-03-07 00:41 LuoTian 阅读(465) 评论(0) 推荐(0) 编辑

摘要:首先,把书上的算法简化一下,直接用数组研究更直观。 定义一个数组: 它假设第一个元素是有序的,然后用第二个元素(下一个元素)和它进行比较,通过循环移动判定,得到一个有序列。得到一个有序列之后,再用下一个元素和这个有序列进行比较,这里的比较,就是局部比较,采用的是尾插法,从后往前。 比如,前两个元素排 阅读全文
posted @ 2016-03-06 18:42 LuoTian 阅读(316) 评论(0) 推荐(0) 编辑

摘要:题目:表A 1 3 5,表B 2 4 6,都呈非递减排序,现将两个表合并成一个表,也呈非递减排序,存放在A中(或者B中),言外之意是不能开辟新表!拿出B中数据,沿着A的后面一直往前比较,如果小于就一直比,如果不小于就插入数据。 这样就相当于数组中的元素两两移动 现在出现一种情况,假如A的元素值一直大 阅读全文
posted @ 2016-03-06 15:12 LuoTian 阅读(352) 评论(0) 推荐(0) 编辑

摘要:四则运算:http://www.cnblogs.com/tinaluo/p/5282045.html .. 阅读全文
posted @ 2016-03-06 03:08 LuoTian 阅读(159) 评论(0) 推荐(0) 编辑

摘要:链栈和顺序栈的区别在于,链栈不受空间限制,根据链表生成,如图,首先观察它的特点: 灰色表示真实数据,而top指向的结点,称之为头结点,它的数据项没存入数据,仅仅是做为一个头结点存在。在链栈的初始化中,首先创建了一个头结点,但是里面没有存放数据,如果可能,存放链栈的长度也是可以的。 如果初始化不创建头 阅读全文
posted @ 2016-03-06 03:01 LuoTian 阅读(2021) 评论(0) 推荐(0) 编辑

摘要:摘要: 摘要: 根据树的原理做的一个单链表,这里,把单链表看做【树】的简化版。 在树的递归创建中,首先创建是头结点,所以单链表也是一样; 单链表的结构: typedef struct node{ int data; struct node *next; }*List,Node; 创建摘要: 根据树的 阅读全文
posted @ 2016-03-04 03:01 LuoTian 阅读(315) 评论(0) 推荐(0) 编辑

摘要:循环队列并不复杂,把几个位置规定清楚是关键!比如,front和rear各指向哪?还有一些小细节,首先观察图:从书上来看,尾端rear必定为空(特意留下一个空位置),front总是指向队头,而rear指向尾。接着是几个重要的公式 判定队列满的公式队列长度的计算公式 下面以入队列说明,首先判定队列是否满 阅读全文
posted @ 2016-03-04 03:01 LuoTian 阅读(249) 评论(0) 推荐(0) 编辑

摘要:结构(带头结点) 初始化 创建(n个结点) 插入 删除 遍历 销毁 结构: 判空:(head->next==head) 初始化:主要注意链表为空的条件,执行语句:L->next=L; 创建:借助一个游标p进行移动、 插入:在第i个位置处插入e,先把指针移到i-1处,然后进行操作。此外,p从头结点开始 阅读全文
posted @ 2016-03-04 03:00 LuoTian 阅读(758) 评论(0) 推荐(0) 编辑

1 2 下一页
点击右上角即可分享
微信分享提示