2006-12-27

无向图的广度搜索实例

关键字: 数据结构
说明一下:下边的例子就是<Java数据结构和算法>书的一个例子,并非我所写的,这一本书我觉得是最好 的一本java数据结构的入门书籍.现在把这一个例子记录在blog上,当作温习一下啦。 无向图的广度搜索的规则有如下: 规则1、访问下一个未来访问的邻接点(如果存在),这个顶点必须是当前顶点的邻接点,标点它,并把它插入到队列中。 规则2、如果因为已经没有未访顶点而不能执行规则1,那么从队列取一个顶点(如果存在),并使其成为当前的顶点。 规则3、如果因为队列为空而不能执行规则2,则搜索结束。 下面是实例的代码: class Queue { private final ...
2006-12-26

无向图的深度优先搜索实例

关键字: Data Structures
说几句题外话,我的书架总摆着几本自己认为不错的java的基础书籍,一是<<Thinking in java>>,另外两本是第二版的<<Data Structures & Algorithms in Java>>和一本国人写的<<Java面向对象程序设计教程>>. 没有什么事做的时候,自己总是会拿起这几本翻一翻,免得有一些基础的东西忘记了。 下边的例子就是<<Data Structures & Algorithms in Java>>书的一个例子,并非我所写的,这一本书我觉得是最好 的一本java数据结构的入门书籍.现在把这一个例子记录在blo ...
这里并没有给出完整的例子,只是一些代码块.我说的是最核心的一些部分. 1、冒泡排序,这应该是性能最差的一种排序,不提倡用. public void bubbleSort()      {      int out, in;      for(out=nElems-1; out>1; out--)   // 外层的循环, ...
我对java基础和数据结构,算法学得好的人很佩服,毕竟无论什么时候,基础的学习才是最重要的.以前学过数据结构,现在重新温习一下. 数组分为有序数组与无序的数组,在一个无序数组中可以很快进行插入,花费O(1)时间,但查找与删除都速度比较慢O(n)时间;有序数组,查找很快O(1)时间花费,但插入却花费O(n)时间. (本文的例子是摘<>这一本书的) 下面看一个无序数组的例子 package org.h2;       /**    * 这一个类是为说 ...