Java与数据结构
文章平均质量分 75
IT独白者
这个作者很懒,什么都没留下…
展开
-
Java图的建立
图在计算机中,是一种非常有用的数据结构,而本博文我们采用java来模拟图(无权图和带权图)。从数学意义上说,树是图的一种。而在计算机中,图的应用方式与树不一样。图通常有一个固定的形状,由物理或抽象的问题所决定的。而在图中,节点可能代表任务,有向边则代表某个任务必须在另一个任务前完成。故而,图的形状取决于真是世界的具体情况。图的节点叫做顶点。图的顶点的java:class Vertex原创 2015-02-15 14:00:35 · 2929 阅读 · 0 评论 -
Java创建图的拓扑排序
拓扑排序算法:对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。通常,这样的线性序列称为满足拓扑次序(Topological Order)的序列,简称拓扑序列。简单的说,由某个集合上的一个偏序得到该集合上的一个全序,这个操作称之为拓扑排序原创 2015-03-01 16:39:58 · 856 阅读 · 0 评论 -
Java快速排序
快速排序的基本思想: 通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分关键字小,则分别对这两部分继续进行排序,直到整个序列有序。 先看一下这幅图:把整个序列看做一个数组,把第零个位置看做中轴,和最后一个比,如果比它小交换,比它大不做任何处理;交换了以后再和小的那端比,比它小不交换,比他大交换。这样循环往复原创 2015-02-15 10:50:01 · 538 阅读 · 0 评论 -
java写二叉排序树的插入、查找和遍历
import java.util.*;class Node{int key;Node left;Node right;Node(int key){this.key = key;left = null;right = null;}}class Tree{ void insert(Node root,int k){i原创 2015-01-22 09:46:41 · 631 阅读 · 0 评论 -
java的键值可以重复的数据结构表示
java中key值可以重复的map:IdentityHashMap2011年5月23日0 条评论在java中,有一种key值可以重复的map,就是IdentityHashMap。在IdentityHashMap中,判断两个键值k1和 k2相等的条件是 k1 == k2 。在正常的Map 实现(如 HashMap)中,当且仅当满足下列条件时才认为两个键 k1 和 k2 相等:转载 2015-01-25 22:21:20 · 9167 阅读 · 0 评论 -
关于java写二叉排序树的问题,实现各种节点的插入,删除,遍历
import java.util.*;class Node{int key;Node left;Node right;Node(int key){this.key = key;left = null;right = null;}}class Tree{ void insert(Node root,int k){i原创 2015-01-21 17:25:45 · 667 阅读 · 0 评论 -
二叉排序树的建立和先序遍历和层次遍历问题之java实现
import java.util.*;class Node{int key;Node left;Node right;Node(int key){this.key = key;left = null;right = null;}}class Tree{ void insert(Node root,int k){i原创 2015-01-21 22:54:45 · 802 阅读 · 0 评论 -
java的希尔排序
希尔排序实际上是一种插入排序的升华准备待排数组[6 2 4 1 5 9]首先需要选取关键字,例如关键是3和1(第一步分成三组,第二步分成一组),那么待排数组分成了以下三个虚拟组:[6 1]一组[2 5]二组[4 9]三组看仔细啊,不是临近的两个数字分组,而是3(分成了三组)的倍数的数字分成了一组,就是每隔3个数取一个,每隔三个再取一个,这原创 2015-02-10 21:40:23 · 436 阅读 · 0 评论 -
Java图以及BFS广度优先遍历
package num;import java.util.*;import java.io.*;class Queue{ private final int SIZE = 20; private int[] queArray; private int front; //队头 private int rear;原创 2015-02-18 10:23:52 · 1717 阅读 · 0 评论 -
Java 图的建立及DFS深度优先遍历
图作为一种重要的数据结构,在实际中是非常有用的。package num;import java.util.*;import java.io.*;class StackX{ private final int SIZE =20; private int[] st; private int top; public StackX()原创 2015-02-18 09:46:11 · 1098 阅读 · 0 评论 -
Java写无向图的基于DFS的最小生成树算法
最小生成树:一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边。无向图的最小生成树比较简单。代码如下,注意:基于DFS的最小生成树算法,是用到栈这一数据结构的。import java.util.*;import java.io.*;class S //栈类,先进后出{原创 2015-03-01 14:40:50 · 1376 阅读 · 0 评论