数据结构与算法
文章平均质量分 66
blue_helper_01
这个作者很懒,什么都没留下…
展开
-
数组螺旋打印
package su.interview; import utils.com.Matrixer; /** * 螺旋打印数列 * * @author Toy * */ public class Array_01 { /** * 从外向里打印 东南西北--东原创 2011-09-05 10:19:16 · 997 阅读 · 0 评论 -
图的矩阵表示
package structure.graph.create; import java.util.ArrayList; import java.util.Scanner; import structure.graph.node.GNode_01; import utils.c原创 2011-09-05 10:33:35 · 346 阅读 · 0 评论 -
计数排序
package algorithm.sort; import utils.com.ArrayLister; /** * 计数排序 O(n) * * 算法的步骤如下: 找出待排序的数组中最大和最小的元素 ,统计数组中每个值为i的元素出现的次数,存入数组C的第i项 *原创 2011-09-05 10:36:33 · 275 阅读 · 0 评论 -
基数排序
package algorithm.sort; import utils.com.ArrayLister; /** * 基数排序 O(n) * 从个位到十位:影响因子 * @author Toy * */ public class RadixSort { /**原创 2011-09-05 10:37:56 · 233 阅读 · 0 评论 -
字符串的左旋转
package su.interview; /** * 定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。如把字符串abcdef左旋转2位得到字符串cdefab。请实现字符串左旋转的函数。 * * @author Toy * */ public原创 2011-09-07 20:11:08 · 252 阅读 · 0 评论 -
用两个栈实现队列 只实现入队出队操作
package structure.stack_queue; import java.util.Stack; /** * 用两个栈实现队列 只实现入队出队操作 * * @author Toy * */ public class Stack_To_Queue {原创 2011-09-08 11:19:11 · 823 阅读 · 0 评论 -
树的层次遍历
package structure.tree.traverse; import java.util.LinkedList; import structure.tree.node.Node_01; public class LevelTraverser { public原创 2011-09-08 08:59:18 · 251 阅读 · 0 评论 -
实现min函数的栈
package structure.stack_queue; import java.util.Stack; /** * 定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。 * * @autho原创 2011-09-08 11:15:56 · 313 阅读 · 0 评论 -
输入两个整数序列。其中一个序列表示栈的push顺序,判断另一个序列有没有可能是对应的pop顺序
package structure.stack_queue; import java.util.Stack; /** * 题目:输入两个整数序列。其中一个序列表示栈的push顺序,判断另一个序列有没有可能是对应的pop顺序。 * * @author Toy *原创 2011-09-08 11:18:14 · 743 阅读 · 0 评论 -
在排序数组中查找和为给定值的两个数字
package su.interview; import algorithm.recursive.QuickSorter; import utils.com.ArrayLister; import utils.random.NumericRandomer; /** * 在排原创 2011-09-06 20:32:25 · 381 阅读 · 0 评论 -
最长公共子序列
package algorithm.apps; import utils.com.Matrixer; /** * 最长公共子序列 * 动态规划,记表备查 * @author Toy * */ public class LCS { public void lcs_原创 2011-09-05 10:30:21 · 213 阅读 · 0 评论 -
数对之差的最大值
package su.interview; /** * 题目:在数组中,数字减去它右边的数字得到一个数对之差。求所有数对之差的最大值。 例如在数组{2, 4, 1, 16, 7, 5, 11, * 9}中,数对之差的最大值是11,是16减去5的结果。 * * @aut原创 2011-09-05 10:25:00 · 352 阅读 · 0 评论 -
堆排序
package algorithm.sort; import utils.com.ArrayLister; import utils.com.Swapper; /** * 堆排序 * * @author Toy * */ public class HeapSor原创 2011-09-05 10:37:06 · 199 阅读 · 0 评论 -
在数组中找第k小元素
package algorithm.apps; import utils.com.Swapper; /** * 在数组中找第k小元素 * * @author Toy * */ public class Select_K_01 { public int par原创 2011-09-05 10:40:06 · 304 阅读 · 0 评论 -
从字符串中删除出现的子串
package su.interview; import java.util.Arrays; /** * 从字符串中删除出现的子串 * @author Toy * */ public class String_01 { /** * 在逐个扫描主串中的字符是否在子原创 2011-09-05 10:26:15 · 770 阅读 · 0 评论 -
最长单调递增子序列的求法
package algorithm.apps; /** * 最长单调递增子序列的求法 LIS * * @author Toy */ public class LIS { /** * 动态规划(n^2),记表备查 b[0,n-1]记录以a[i]结尾的最长递增子序原创 2011-09-05 10:31:36 · 323 阅读 · 0 评论 -
图的广度优先遍历
package structure.graph.traverse; import java.util.ArrayList; import java.util.HashSet; import java.util.LinkedList; import java.util.Rando原创 2011-09-05 10:34:34 · 286 阅读 · 0 评论 -
深度优先遍历
package structure.graph.traverse; import java.util.ArrayList; import java.util.HashSet; import java.util.LinkedList; import java.util.Rando原创 2011-09-05 10:35:15 · 264 阅读 · 0 评论 -
桶排序
package algorithm.sort; import utils.com.ArrayLister; /** * 桶排序 O(n) * * @author Toy 排序的思想是把[0,1)划分为n个大小相同的子区间,每一子区间是一个桶。 * 然原创 2011-09-05 10:39:24 · 210 阅读 · 0 评论 -
给定两个有序数组求他们的中位数
package su.interview; import utils.com.ArrayLister; /** * 给定两个有序数组,求中位数. * @author Toy * */ public class MiddleNum_01 { /** * 二者先合原创 2011-09-05 10:22:57 · 355 阅读 · 0 评论 -
两个单向链表,找出它们的第一个公共结点
package structure.list; import structure.list.node.LNode_01; /** * 题目:两个单向链表,找出它们的第一个公共结点 * * @author Toy * */ public class First_C原创 2011-09-08 18:23:22 · 520 阅读 · 0 评论