Tag Archives: 数据结构

数据结构重读 - 冒泡排序

发现自己学的最水的一门就是本科的数据结构了,我现在连冒泡排序都写不出来,sign。。。从今天开始重读数据结构。

冒泡排序:

对于有N个数的数组:

(1) 第1趟从第1个开始,如果arr[j] >= arr[j+1],swap(arr[j], arr[j+1])。本趟的结果是将最“大”的放在最后的位置上。
(2)第2趟仍然从第1个开始,执行大则swap但只执行到n-1的位置上,即次大的放到n-1上。
以此类推……
注:可优化,如果某一轮没有任何swap,说明已经有序了[......]

继续阅读

《数据结构》读书笔记 第六章 二叉树的三叉链表存储

今天好像大脑有点疲劳了,或者是今天写得太多了,接近400行啊~
犯了两个有意思的错误,分享一下:
(1)写查双亲节点成员函数的时候 对数据2测试怎么怎么也过不去。把parent用2种方法分别写了2次 崩溃了。然后骤然发现在之前调用了一次assign 把根结点 1-->2.......
(2)还是写这个parent的时候 居然开了个队列开始准备塞东西 然后想起来这是三叉 好像有parent指针哦……
是该歇歇了,假期《数据结构》已经啃了大半本了,修养下该开学了。这[......]

继续阅读

《数据结构》读书笔记 第六章 二叉树的二叉链表实现

没想到真的能写出来,因为这是第一次用类的方式封装描述。真的是第一次写类。而且加上二叉树这个比较难描述的东东,确实费了不少劲。发现面向对象确实是很好的。真的是让用户无需关心数据细节。当然可能是还没习惯,写得有点慢。
期间,递归的不熟练导致犯下了几次严重错误,好在自己都纠正了。
但是还有以下没有解决:
1、如何在类中调用函数指针?
2、Parent函数能不能用递归描述?
...
若有高手看到指点一二,不胜感激~ 微笑 
BiTree.h:定义了二叉类 BiTree以及基本操作
#in[......]

继续阅读