摘要: 树是一种非线性的二维数据结构。 这里要说的是一种特殊的二叉树,叫对分查找树。特点在于:左子树的所有值都比根节点小,右子树的所有值都比根节点大。 对分查找树的三种遍历: 中序遍历(inOrder) 遍历左子树;处理节点中的值;遍历右子树。 前序遍历(preOrder) 处理节点中的值;遍历左子树;遍历右子树。 后序遍历(postOrder... 阅读全文
posted @ 2006-11-08 23:31 沧海-重庆 阅读(758) 评论(0) 推荐(0) 编辑
摘要: C++失败题 class BYTEmain(){BYTE * pByte = new BYTE[4];for(int i = 0; i using namespace std; char* strcpy(char* dest, const char *src ){// char* pdest = static_cast(dest);// const char* psrc = static_cas... 阅读全文
posted @ 2006-11-08 23:29 沧海-重庆 阅读(3383) 评论(1) 推荐(0) 编辑
摘要: 十进制转16进制 、十进制转二进制 函数 阅读全文
posted @ 2006-11-08 23:10 沧海-重庆 阅读(5840) 评论(4) 推荐(0) 编辑
摘要: 在bbs上,堆与栈的区分问题,似乎是一个永恒的话题,由此可见,初学者对此往往是混淆不清的,所以我决定拿他第一个开刀。 阅读全文
posted @ 2006-11-08 23:04 沧海-重庆 阅读(675) 评论(0) 推荐(0) 编辑
摘要: 最大值堆(MAX-HEAP)的性质是任意一个结点的值都大于或者等于其任意一个子结点存储的值。由于根结点包含大于或等于其子结点的值,而其子结点又依次大于或者等于各自结点的值,所以根结点存储着该树的所有结点中的最大值。 阅读全文
posted @ 2006-11-08 22:24 沧海-重庆 阅读(566) 评论(0) 推荐(0) 编辑
摘要: 如果一个人自称为程序高手,却对内存一无所知,那么我可以告诉你,他一定在吹牛。 阅读全文
posted @ 2006-11-08 21:52 沧海-重庆 阅读(1266) 评论(2) 推荐(1) 编辑
摘要: 在c中,野指针也许性子野,但是控制起来也是有章可循。然而事情在c++中出现了变化。 阅读全文
posted @ 2006-11-08 21:50 沧海-重庆 阅读(493) 评论(0) 推荐(0) 编辑
摘要: 许多 C 或者 C++ 程序员对垃圾回收嗤之以鼻,认为垃圾回收肯定比自己来管理动态内存要低效 阅读全文
posted @ 2006-11-08 21:49 沧海-重庆 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 假设我们要开发一个String类,它可以方便地处理字符串数据。我们可以在类中声明一个数组,考虑到有时候字符串极长 阅读全文
posted @ 2006-11-08 21:48 沧海-重庆 阅读(568) 评论(0) 推荐(0) 编辑
摘要: 写出那些不会导致任何内存泄漏的代码。很明显,当你的代码中到处充满了new 操作、delete操作和指针运算的话,你将会在某个地方搞晕了头,导致内存泄漏,指针引用错误,以及诸如此类的问题。 阅读全文
posted @ 2006-11-08 21:47 沧海-重庆 阅读(297) 评论(0) 推荐(0) 编辑
摘要: C++内存分配与释放均由用户代码自行控制,灵活的机制有如潘多拉之盒,即让程序员有了更广的发挥空间 阅读全文
posted @ 2006-11-08 21:43 沧海-重庆 阅读(473) 评论(0) 推荐(0) 编辑
摘要: 程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。 阅读全文
posted @ 2006-11-08 21:42 沧海-重庆 阅读(598) 评论(1) 推荐(0) 编辑
摘要: 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区 阅读全文
posted @ 2006-11-08 21:38 沧海-重庆 阅读(356) 评论(0) 推荐(0) 编辑
摘要: 在嵌入式系统中使用C++的一个常见问题是内存分配,即对new 和 delete 操作符的失控。 阅读全文
posted @ 2006-11-08 21:35 沧海-重庆 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 大家都知道变量的生存周期这个概念,可是有的时候变量生存周期已经结束,但是所分配的那块内存空间还是存在的。文章举了四个不同的例子,来说明这其中的原因。 阅读全文
posted @ 2006-11-08 21:32 沧海-重庆 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 作为一个.NET程序员,我们知道托管代码的内存管理是自动的。.NET可以保证我们的托管程序在结束时全部释放,这为我们编程人员省去了不少麻烦,我们可以连想都不想怎么去管理内存,反正.NET自己会保证一切。好吧,有道理,有一定的道理。问题是,当我们用到非托管资源时.NET就不能自动管理了。这是因为非托管代码不受CLR(Common Language Runtime)控制,超出CLR的管理范围。那么如何处理这些非托管资源呢,.NET又是如何管理并释放托管资源的呢? 阅读全文
posted @ 2006-11-08 21:25 沧海-重庆 阅读(591) 评论(0) 推荐(0) 编辑
摘要: ANSI/ISO SQL92标准定义了一些数据库操作的隔离级别: l 未提交读(read uncommitted) l 提交读(read committed) l 重复读(repeatable read) l 序列化(serializable) 也就是隔离级别,0,1,2,3。ANSI/ISO SQL92标准有很详细的说明,可是这个说明详细是详细,就是看不明白。今天经高人指点,茅厕顿开... 阅读全文
posted @ 2006-11-08 21:13 沧海-重庆 阅读(435) 评论(0) 推荐(0) 编辑
摘要: 隔离属性是 ACID 的四个属性之一,逻辑工作单元必须具备这四个属性才能称为事务。该属性能够使事务免受其它并发事务所执行的更新的影响。每个事务的隔离级别实际上都是可以自定义的。 Microsoft® SQL Server™ 支持 SQL-92 中定义的事务隔离级别。设置事务隔离级别虽然使程序员承担了某些完整性问题所带来的风险,但可以换取对数据更大的并发访问权。与以前的隔离级别相比,每个隔离级别都提... 阅读全文
posted @ 2006-11-08 21:06 沧海-重庆 阅读(696) 评论(0) 推荐(0) 编辑
摘要: /* .Net/C#: 实现支持断点续传多线程下载的 Http Web 客户端工具类 (C# DIY HttpWebClient) * Reflector 了一下 System.Net.WebClient ,重载或增加了若干: * DownLoad、Upload 相关方法! * DownLoad 相关改动较大!... 阅读全文
posted @ 2006-11-08 21:02 沧海-重庆 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 三.线程的同步和通讯——生产者和消费者 假设这样一种情况,两个线程同时维护一个队列,如果一个线程对队列中添加元素,而另外一个线程从队列中取用元素,那么我们称添加元素的线程为生产者,称取用 元素的线程为消费者。生产者与消费者问题看起来很简单,但是却是多线程应用中一个必须解决的问题,它涉及到线程之间的同步和通讯问题。 前面说过,每个线程都有自己的资源,但是代码区是共享的,即每个线程都可以执行相... 阅读全文
posted @ 2006-11-08 20:59 沧海-重庆 阅读(451) 评论(0) 推荐(0) 编辑