C语言基础:插入排序法 |
| 用c实现的插入排序法,先输入10个数,然后利用插入排序法进行排序,将结果输出。算法简单,可供初学者学习。/**="http://adv.pconline.com.cn/adpuba/show?id=pc.rjzx.kaifa.wenzhang.hzh.&media=html&pid=cs.pconline.rjzx.hzh." N |
C++基础:函数指针调用方式 |
| // test12.cpp : Defines the entry point for the console application. // #include "stdafx.h" void func(int i) { |
const使用详解 |
|
作者:康建东
关于C++中的const关键字的用法非常灵活,而使用 |
C语言中的三大定律 |
| 自己总结的,觉得能帮助初学者看透一些纷繁复杂的语法规则,理解C语言的真谛第一次发布,不一定正确,欢迎讨论、指正、补充
/**="http://adv.pconline.com.cn/adpuba/show?id=pc.rjzx.kaifa.wenzhang.hzh.&media=html&pid=cs.pconline.rjzx.hzh." NAME= |
C++数据结构学习:递归(3.1) |
| 递归法和回溯法
/**="http://adv.pconline.com.cn/adpuba/show?id=pc.rjzx.kaifa.wenzhang.hzh.&media=html&pid=cs.pconline.rjzx.hzh." NAME="ad_top" ID="ad_top |
C++数据结构学习:二叉树(1) |
| 这些天参与了CSDN论坛的讨论,改变了我以前的一些看法。回头看我以前的东西,我虽对这本书很不满,但我还是按照它的安排在一点点的写;这样就导致了,我过多的在意书中的偏漏,我写的更多是说“这本书怎样”,而偏离了我写这些的初衷——给正在学习数据结构的人一些帮助。正像我在前面所说的,虽然现有的教科书都不是很合理,但如果仅仅是抱怨这点,那无异于泼妇骂街。虽然本人的水平连初级都够不上,但至少先从我做一点尝试,以后这门课的教授方法必将一点点趋于合理。
|
C++数据结构学习:二叉树(2) |
| 线索化二叉树
/**="http://adv.pconline.com.cn/adpuba/show?id=pc.rjzx.kaifa.wenzhang.hzh.&media=html&pid=cs.pconline.rjzx.hzh." NAME="ad_top" ID="ad_top" SCROLLING= |
C++数据结构学习:二叉树(3) |
| 递归遍历与非递归遍历
/**="http://adv.pconline.com.cn/adpuba/show?id=pc.rjzx.kaifa.wenzhang.hzh.&media=html&pid=cs.pconline.rjzx.hzh." NAME="ad_top" ID="ad_top |
C++数据结构学习:二叉树(4) |
| 才刚开了个头,就要说再见了——在树这里,除了二叉树,别的都还没有讲。为什么可以总结了呢?因为前面已经涉及到了树的两个基本用途,而如果再讲B+、B-,就不能不提到搜索,如果是胜者树就不能不提到排序。为此,把这部分放到后面。我前面所做的努力,只是让你有个基本概念,什么时候记得用树。
/**="http://adv.pconline.com.cn/adpuba/show?id=pc.rjzx. |
C++数据结构学习:栈和队列 |
| 栈和队列是操作受限的线性表,好像每本讲数据结构的数都是这么说的。有些书按照这个思路给出了定义和实现;但是很遗憾,这本书没有这样做,所以,原书中的做法是重复建设,这或许可以用不是一个人写的这样的理由来开脱。
/**="http://adv.pconline.com.cn/adpuba/show?id=pc.rjzx.kaifa.wenzhang.hzh.&media=html |
C++数据结构学习:用栈做表达式求值 |
| 栈的应用很广泛,原书只讲解了表达式求值,那我也就只写这些。其实,栈的最大的用途是解决回溯问题,这也包含了消解递归;而当你用栈解决回溯问题成了习惯的时候,你就很少想到用递归了,比如迷宫求解。另外,人的习惯也是先入为主的,比如树的遍历,从学的那天开始,就是递归算法,虽然书上也教了用栈实现的方法,但应用的时候,你首先想到的还是递归;当然了,如果语言本身不支持递归(如BASIC),那栈就是唯一的选择了——好像现在的高级语言都是支持递归的。
|
C++数据结构学习:事件驱动模拟 |
| 我看的两本教科书(《数据结构(C语言版)》还有这本黄皮书)都是以这个讲解队列应用的,而且都是银行营业模拟(太没新意了)。细比较,这两本书模拟的银行营业的方式还是不同的。1997版的《数据结构(C语言版)》的银行还是老式的营业模式(毕竟是1997年的事了),现在的很多地方还是这种营业模式——几个窗口同时排队。
/**="http://adv.pconline.com.cn/adpuba/s |
C++数据结构学习:在链表中链入对象 |
| 似乎你也注意到了,不管怎么定义,好像一个链表中的对象都是同一类型的。而实际上,这也是必须的,否则,返回节点中的数据这样的函数的返回值的类型是什么呢?但是,人的要求是无止境的……(省略本人感慨若干百字)。把不同的对象链在一个链表中的目的是为了方便使用,现在一定记住这个原则,后面的讨论都是基于这个原则的,否则,我们就是技术狂人了——偏偏实现一些看起来不可能的事情。
/**="http://a |
C++数据结构学习:递归(1) |
| 上网查了查,关于“递归”的文章可以说“汗牛充栋”——请原谅我在这里犯酸,我的意思是,写别人都写臭的东西让大家看,只是浪费大家的时间,所以我下面的东西应该是一些至少我看起来是新的东西,如果觉得有什么不清楚的,请参阅相关的文章(太多了)。即使这样,这篇文章还是不能把我想说的写完,看来我这人真的有废话的习惯。
/**="http://adv.pconline.com.cn/adpuba/sho |
C++数据结构学习:递归(2-1) |
| 汉诺塔的非递归解法
/**="http://adv.pconline.com.cn/adpuba/show?id=pc.rjzx.kaifa.wenzhang.hzh.&media=html&pid=cs.pconline.rjzx.hzh." NAME="ad_top" ID="ad_top" SCROLLING= |
C++数据结构学习:递归(2.2) |
| 3号盘子的目标柱是C,但是已经有了1号盘子,我们最直觉的反映就是——将碍事的盘子搬到另一根柱子上面去。于是,我们要做的是(规律2):保存当前柱的信息(柱子号、应该搬动的最下面一块盘子的号,和它的目标柱),以备当障碍清除后回到现在的柱子继续搬,将当前柱转换为碍事的盘子所在的柱子。假设这样若干步后,我们将7号盘子从A搬到了C,此时,保存当前柱号的栈一定是空了,我们该怎么办呢? |
C++数据结构学习:递归(3) |
| 关于迷宫,有一个引人入胜的希腊神话,这也是为什么现今每当人们提到这个问题,总是兴致勃勃(对于年青人,估计是RPG玩多了),正如虽然九宫图连小学生都能做出来,我们总是自豪的说那叫“洛书”。这个神话我不复述了,有兴趣的可以在搜索引擎上输入“希腊神话 迷宫”,就能找到很多的介绍。
|
一个 C++ 日期类(第一部分) |
|
一个 C++ 日期类(第一部分)
原著 C |
一个 C++ 日期类(第二部分) |
|
一个 C++ 日期类(第二部分)
原著 C |
clone模式在平衡排序二叉树实现中的应用 |
|
clone模式在平衡排序二叉树实现中的应用
作者: |
一种随机抽题的简单算法 |
|
一种随机抽题的简单算法
作者: |
C语言中对时间和日期的处理 |
|
C语言中对时间和日期的处理原著:Chuck Allison翻译: |
使用 random_shuffle() 算法随机化序列元素 |
|
|
如何用CZip/CUnzip类压缩/解压缩文件 |
|
如何用CZip/CUnzip类压缩/解压缩文件
作者: |
比较数据排序前后的查找次数 |
|
比较数据排序前后的查找次数
作者: |