![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 73
ICareThisYou
学习日记.....
展开
-
线性表的简单实现
package first;public class List { final int defalut = 5; String data[]; int length = 0; public List() { this.data = new String[defalut]; } public List(int size) { this.data = new S原创 2014-03-02 13:29:09 · 485 阅读 · 0 评论 -
LinkTable的简单实现
package first;public class LinkTable { private LinkNode head = null; private int counts = 0; /** * 在链头给链表增加结点 **/ public void insertFront(int d) { if (head == null) { head = new LinkN原创 2014-03-02 13:19:12 · 1935 阅读 · 0 评论 -
动态规划--子序列
2.问题描述:所谓子序列,就是在原序列里删掉若干个元素后剩下的序列,以字符串"abcdefg"为例子,去掉bde得到子序列"acfg"现在的问题是,给你一个数字序列,你要求出它最长的单调递增子序列。 输入:多组测试数据,每组测试数据第一行是n(1,下一行是n个比1e9小的非负整数 输出:对于每组测试数据输出一行,每行内容是最长的单调递增子序列的长度 样例输入:51 2 4 8 1651 10 4原创 2014-03-16 00:05:29 · 465 阅读 · 0 评论 -
通过右运算表达试来计算结果
可以使用双Stack同时使用来实现以下的功能(一个存数字,一个算运算符),但是用stack比较简单,上课听老师说电脑的运算也只是用一个Stack来实现算法的,然后自己就做了一下:package three;import java.util.Stack;import java.util.StringTokenizer;public class CalcStack { publi原创 2014-03-18 22:13:37 · 585 阅读 · 0 评论 -
将运算式转成逆波兰表达式(即右表达式)
package three;import java.util.Stack;import java.util.StringTokenizer;public class CalcStack { public static void main(String[] args) { String content = "30-5*(3/7-20)"; String content1 = "原创 2014-03-18 19:47:11 · 618 阅读 · 0 评论 -
二叉树的实现和二叉数的遍历实现
package tree;import java.util.LinkedList;import java.util.Queue;import java.util.Stack;public class BinaryTree { public BinTreeNode root; public BinaryTree() { root = null; } public Bin原创 2014-05-04 11:34:03 · 547 阅读 · 0 评论 -
深度优先搜索算法和广度优先搜索算法的搜索次序(二叉树)
广度优先搜索算法的动画范例原创 2014-05-04 13:32:13 · 1688 阅读 · 0 评论 -
普里姆算法(prim)的实现
从单一顶点开始,普里姆算法按照以下步骤逐步扩大树中所含顶点的数目,直到遍及连通图的所有顶点。输入:一个加权连通图,其中顶点集合为V,边集合为E;初始化:Vnew = {x},其中x为集合V中的任一节点(起始点),Enew = {};重复下列操作,直到Vnew = V:在集合E中选取权值最小的边(u, v),其中u为集合Vnew中的元素,而v则不是(如果存在有多条满足前述条件即具有相原创 2014-05-06 12:22:11 · 875 阅读 · 0 评论 -
二分查找(折半查找)
//在有序表a[0]--a[n-1]中二分查找关键码为key的数据元素//查找成功时返回该元素的下标序号;失败时返回-1int BiSearch(DataType a[], int n, KeyType key){ int low = 0, high = n - 1;//确定初始查找区间上下界 int mid; while(low { m原创 2014-05-16 11:08:04 · 745 阅读 · 0 评论