
算法
文章平均质量分 76
Master-Fei
这个作者很懒,什么都没留下…
展开
-
单链表逆序
package ZHIHU; import ZHIHU.Main20170930_001.Node; public class Main20171009002 { /** * 单链表的逆置 */ private static class Node{ int value; Node next; } private static Node reverse(Node h原创 2017-10-09 11:29:02 · 193 阅读 · 0 评论 -
两个有序的链表合并
package ZHIHU; public class Main20171009001 { /** * 输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的 */ public static void main(String[] args) { ListNode head1 = new ListNode(); head1.value = 1;原创 2017-10-09 14:32:26 · 213 阅读 · 0 评论 -
在一个数组中找两个数,使得它们的和为一个指定的数
package ZHIHU; public class Main20171009003 { /** * 在一个数组中找两个数,使得它们的和为一个指定的数 */ /* * 在数组有序的情况下,时间复杂度O(n), 空间复杂度O(1) * 这里只找出一对满足条件的两个数 */ private static void search(int[] arr, int ai原创 2017-10-09 15:28:04 · 1112 阅读 · 0 评论 -
判断一个树是否是另一个树的子树
判断一个树是否是另一个树的子树 package ZHIHU; public class Main20171009004 { /** * 判断一个树是否是另一个树的子树 */ private static class Node{ int value; Node left, right; Node(int value){ this.value = value;原创 2017-10-09 16:08:27 · 555 阅读 · 0 评论 -
连续子数组的和为指定值的最大长度
连续子数组的和为指定值的最大长度 例如: arr = {3,4,1,7,8},和为15的最长子数组为{3,4,1,7} arr 3 4 1 7 8 sum 3 7 8 15 23 index 0 1 2 3 4 每次把(sum, i)存入一个map,当然sum不能被覆盖,每次遍历的时查找 sum-原创 2017-10-16 16:53:39 · 1945 阅读 · 0 评论 -
最长公共子序列LCS
最长公共子序列LCS,java版本 举个栗子: "abcd" 和 "padcbd" 的最长公共子序列为 acd或者abd,长度为3 状态转移方程: dp[i][j] = dp[i-1][j-1] + 1 , if x[i] == y[j] = max{dp[i-1][j], dp[i][j-1]}, if x[i] != y[j] dp[i][j]表示字符串原创 2017-10-17 15:38:12 · 173 阅读 · 0 评论