分类目录归档:C/C++数据结构

这是一门高深的知识,本版依然只接受具有技术性的文章。

c++开发中数据结构和算法的分离
HOT

相信每一个在windows下编过程序的人都或多或少地用过位图,大多数人是从网上下载一些成熟完善的dib类库来使用(例如cximage、cdib),少数人有一套自己封装好的dib类库,方便以后的扩充和使用。(近几年gdi+异军突起,在某些处理方面,如:缩放、旋转、渐变填充等它提供无与伦比的速度和质量,但,如果你想做一个完善的图像处理程序,直接使用它会给架构设计带来困难,你可以用adapter模式封装...
阅读全文

C++数据结构学习:二叉树(4)
HOT

才刚开了个头,就要说再见了——在树这里,除了二叉树,别的都还没有讲。为什么可以总结了呢?因为前面已经涉及到了树的两个基本用途,而如果再讲B+、B-,就不能不提到搜索,如果是胜者树就不能不提到排序。为此,把这部分放到后面。我前面所做的努力,只是让你有个基本概念,什么时候记得用树。  树的两个基本用途,可以用物质和精神来比喻。    一个用途是做为数据储存,储存具有树结构的数据——目录、族谱等等。为了...
阅读全文

C++数据结构学习:事件驱动模拟
HOT

我看的两本教科书(《数据结构(C语言版)》还有这本黄皮书)都是以这个讲解队列应用的,而且都是银行营业模拟(太没新意了)。细比较,这两本书模拟的银行营业的方式还是不同的。1997版的《数据结构(C语言版)》的银行还是老式的营业模式(毕竟是1997年的事了),现在的很多地方还是这种营业模式——几个窗口同时排队。  这种方式其实不太合理,经常会出现先来的还没有后来的先办理业务(常常前面一个人磨磨蹭蹭,别...
阅读全文

C++数据结构学习:在链表中链入对象
HOT

似乎你也注意到了,不管怎么定义,好像一个链表中的对象都是同一类型的。而实际上,这也是必须的,否则,返回节点中的数据这样的函数的返回值的类型是什么呢?但是,人的要求是无止境的……(省略本人感慨若干百字)。把不同的对象链在一个链表中的目的是为了方便使用,现在一定记住这个原则,后面的讨论都是基于这个原则的,否则,我们就是技术狂人了——偏偏实现一些看起来不可能的事情。  达到这个目标的原理其实很简单,只要...
阅读全文

数据结构学习(C++)——线性链式结构总结
HOT

 在开始写这些文章之前,我曾经有个想法,能不能以单链表为基础,完成所有的线性链式结构?实践证明,是可以的,就像你看到的这样。我做这个尝试的起因是,看不惯现在教科书凌乱的结构:罗列了一大堆ADT或者是templat class,好像这些都要你去记似的。殊不知,只有提取共性,突出个性,才能更明显的表现出各种数据结构的差异,显示数据结构的进化发展的过程,看出变化的内在需求。借用《C++沉思录》...
阅读全文

文件基本概念,顺序文件的概念
HOT

本课主题: 文件概念,顺序文件教学目的: 掌握文件基本概念,顺序文件的概念。教学重点: 文件基本概念教学难点: 逻辑结构与物理结构的关系。授课内容:一、表与文件和表类似,文件是大量记录的集合。习惯上称存储在主存储器(内存储器)中的记录集合为表,称存储在二级存储器(外存储器)中的记录集合为文件。二、文件基本概念文件:是由大量性质相同的记录组成的集合。文件按记录类型不同分类操作系统的文件一维的连续的字...
阅读全文

哈希表的概念作用及意义,哈希表的构造方法
HOT

本课主题: 哈希表(一)教学目的: 掌握哈希表的概念作用及意义,哈希表的构造方法教学重点: 哈希表的构造方法教学难点: 哈希表的构造方法授课内容:一、哈希表的概念及作用一般的线性表,树中,记录在结构中的相对位置是随机的,即和记录的关键字之间不存在确定的关系,因此,在结构中查找记录时需进行一系列和关键字的比较。这一类查找方法建立在“比较“的基础上,查找的效率依赖于查找过程中所进行的比较次数。 理想的...
阅读全文

用递归法解决商人渡河问题
HOT

递归确实是一种很了不起的方法,但是我感觉实在是太难掌握了,递归法可以用栈转换成为非递归法,但是递归法可以使程序简单,用递归法解决的n皇后问题,还有汉诺塔问题,迷宫问题。。。。。。         商人渡河问题是这样的:有三个商人,三个强盗,和一条船(船每次只可以载小于等于两个人)他们同在河的一边,想渡过河去,但是必须保证在河的任...
阅读全文
3 页 / 共 9