算法和数据结构是计算机科学的核心内容。作为程序员,编程是我们的实战项目。然而,写出程序还不够。一个程序在应对一些大型而复杂的情况时,会耗费大量的时间。我们可以很容易写出一个从文件中找到一个词的程序,比如逐词扫描,看是否相符。但如果我们的文件有几十TB,而且要从文件中找到上百个词,逐个扫描的办法就几乎...
分类:
其他好文 时间:
2014-05-27 01:34:40
阅读次数:
265
删除链表结点注意保证链表不会断开。删除的节点是尾结点时,并不能保证是O(1)时间。但平均下来时间复杂度仍然保持在O(1)。...
分类:
其他好文 时间:
2014-05-26 03:38:22
阅读次数:
166
很不习惯作者在书中“鲁棒性”这个叫法,感觉不伦不类,直接称健壮性多好,简单明了。...
分类:
其他好文 时间:
2014-05-26 03:36:55
阅读次数:
186
思路:1、反转后头结点变化;2、注意链表可能断裂的情形...
分类:
其他好文 时间:
2014-05-26 03:13:18
阅读次数:
163
注意:1、仅根据前序和后序无法构建唯一的二叉树;2、二叉树前序遍历,第一个数字总是树的根节点的值;3、中序遍历中,根节点的值在序列的中间,左子树的值子在根节点的值得左边,右字树的值在根节点的值得右边;4、思路:递归...
分类:
其他好文 时间:
2014-05-22 23:56:14
阅读次数:
408
A、B两个整数集合,设计一个算法求他们的交集。
代码留作记录,本人水平有限,看了别人的解法真是自愧不如。
关于此题的详细探讨可以参考:http://blog.csdn.net/thebestdavid/article/details/12056293...
分类:
其他好文 时间:
2014-05-20 14:59:37
阅读次数:
245
分析树
树的结构完成以后,该是时候看看它能做点什么实事儿了。这一节里,我们研究一下分析树。分析树能够用于真实世界的结构表示,象语法或数学表达式一类的。
图1
一个简单语句的分析树
图1所示是一个简单语句的层级结构,把语句表示为树结构可以让我们用子树来分析句子的组成部分。
图2 ((7+3)?(5?2))的分析树
我们也可以把数学表达式如((7+3...
分类:
编程语言 时间:
2014-05-13 06:14:20
阅读次数:
691
//链表操作:建立、插入、删除、查找、倒置、删除等基本操作
#include
#include
typedef
struct LNode
{
int data;
structLNode *next;
}LNode,*Llist;
LNode *creat_head();//创建一个空表
void creat_list(LNode *,int);//创...
分类:
其他好文 时间:
2014-05-11 03:33:11
阅读次数:
351
/*---上机作业作业,二项式加法---*/
/*---By 潘尚 ---*/
/*---日期: 2014-5-8 . ---*/
/*---题目:---*/
//假设有两个稀疏多项式A和B,设计算法完成下列任务
//1.输入并建立多项式A和B;
//2.求两个多项式的和多项式C;
//3.求两个多项式的积多项式D;
//输出4个多项式A,B,C,D;
#include
#include
#i...
分类:
其他好文 时间:
2014-05-09 02:44:41
阅读次数:
345
树的实现
记住上一节树的定义,在定义的基础上,我们用以下的函数创建并操作二叉树:
BinaryTree() 创建一个二叉树实例 getLeftChild() 返回节点的左孩子 getRightChild() 返回节点的右孩子 setRootVal(val) 把val变量值赋给当前节点 getRootVal() 返回当前节点对象。 insertLeft(val) 创建一个新二叉树作为当前...
分类:
编程语言 时间:
2014-05-07 15:58:43
阅读次数:
504