摘要:
链接 给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。 子序列定义为:不改变剩余字符顺序的情况下,删除某些字符或者不删除任何字符形成的一个序列。 class Solution { public static int longestPalindromeSubseq(String s 阅读全文
posted @ 2021-10-13 23:35
Tianyiya
阅读(68)
评论(0)
推荐(0)
摘要:
链接 给定一个没有重复值的整形数组arr,初始时认为arr中每一个数各自都是一个单独的集合。请设计一种叫UnionFind的结构,并提供以下两个操作。 boolean isSameSet(int a, int b): 查询a和b这两个数是否属于一个集合 void union(int a, int b 阅读全文
posted @ 2021-10-13 23:14
Tianyiya
阅读(29)
评论(0)
推荐(0)
摘要:
链接 给你两个整数 a 和 b ,不使用 运算符 + 和 - ,计算并返回两整数之和。 import java.util.Scanner; class Solution { /** * a + b: * 0 + 1 = 1 * 1 + 1 = 0 * 进位: * a & b * @pa 阅读全文
posted @ 2021-10-13 23:06
Tianyiya
阅读(46)
评论(0)
推荐(0)
摘要:
import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; class Graph { private Map<Node, Map<Node, Edge>> ed 阅读全文
posted @ 2021-10-13 23:05
Tianyiya
阅读(43)
评论(0)
推荐(0)
摘要:
给出一棵二叉树的先序和中序数组,通过这两个数组直接生成正确的后序数组。 import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class Main { private static void 阅读全文
posted @ 2021-10-13 23:04
Tianyiya
阅读(190)
评论(0)
推荐(0)
摘要:
链接 给定一个只包含三种字符的字符串:( ,) 和 *,写一个函数来检验这个字符串是否为有效字符串。有效字符串具有如下规则: 任何左括号 ( 必须有相应的右括号 )。 任何右括号 ) 必须有相应的左括号 ( 。 左括号 ( 必须在对应的右括号之前 )。 * 可以被视为单个右括号 ) ,或单个左括号 阅读全文
posted @ 2021-10-13 23:01
Tianyiya
阅读(102)
评论(0)
推荐(0)
摘要:
链接 给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。 请你设计并实现时间复杂度为 O(n) 的算法解决此问题。 import java.util.HashMap; import java.util.Map; class Solution { pr 阅读全文
posted @ 2021-10-13 22:41
Tianyiya
阅读(39)
评论(0)
推荐(0)
摘要:
链接 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,7] 的子序列。 class Solution { private int searc 阅读全文
posted @ 2021-10-13 22:35
Tianyiya
阅读(45)
评论(0)
推荐(0)
摘要:
链接 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。 例如,"ace" 是 阅读全文
posted @ 2021-10-13 22:27
Tianyiya
阅读(35)
评论(0)
推荐(0)
摘要:
链接 给定两个字符串str1和str2,输出两个字符串的最长公共子串,如果最长公共子串为空,输出-1。 import java.util.Scanner; public class Main { private static String solve(String str1, String str2 阅读全文
posted @ 2021-10-13 22:21
Tianyiya
阅读(45)
评论(0)
推荐(0)
摘要:
链接 给定两个字符串str1和str2,再给定三个整数ic,dc和rc,分别代表插入、删除和替换一个字符的代价,请输出将str1编辑成str2的最小代价。 public class Solution { public int minEditCost(String str1, String str2, 阅读全文
posted @ 2021-10-13 22:05
Tianyiya
阅读(35)
评论(0)
推荐(0)
摘要:
链接 给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器。 class So 阅读全文
posted @ 2021-10-13 21:52
Tianyiya
阅读(38)
评论(0)
推荐(0)
摘要:
链接 你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都 围成一圈 ,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警 。 给定一个代表每个房屋存放金额的非负整数数组,计算你 阅读全文
posted @ 2021-10-13 21:46
Tianyiya
阅读(30)
评论(0)
推荐(0)
摘要:
链接 在上次打劫完一条街道之后和一圈房屋后,小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为“根”。 除了“根”之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果两个直接相连的房子在同一天晚上被打劫,房屋 阅读全文
posted @ 2021-10-13 21:45
Tianyiya
阅读(33)
评论(0)
推荐(0)
摘要:
• 单个格子枚举行为 • 二维单调性 • 区间划分 • 不同时依赖于自己本行和本列的值 将正数数组切分为2份,使累加和最大的部分最小。返回 dp[i],代表将 0~i切分为2份的结果。 假设 0~i已求的结果dp[i],切分点为k,此时求dp[i+1]。 分情况: 1. dp[i] 来自右部分,很显 阅读全文
posted @ 2021-10-13 21:42
Tianyiya
阅读(31)
评论(0)
推荐(0)
摘要:
链接 给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。 完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h 个节点。 class Solutio 阅读全文
posted @ 2021-10-13 21:38
Tianyiya
阅读(77)
评论(0)
推荐(0)
摘要:
/** * <p> * Abstract binary search tree implementation. Its basically fully implemented * binary search tree, just template method is provided for cre 阅读全文
posted @ 2021-10-13 18:31
Tianyiya
阅读(38)
评论(0)
推荐(0)
摘要:
/** * * Abstract class for self balancing binary search trees. Contains some methods * that is used for self balancing trees. * * @author Ignas Lelys 阅读全文
posted @ 2021-10-13 18:30
Tianyiya
阅读(50)
评论(0)
推荐(0)
摘要:
public class SizeBalancedTreeMap { public static class SBTNode<K extends Comparable<K>, V> { public K key; public V value; public SBTNode<K, V> left; 阅读全文
posted @ 2021-10-13 18:29
Tianyiya
阅读(46)
评论(0)
推荐(0)
摘要:
/** * <p> * AVL tree implementation. * <p> * In computer science, an AVL tree is a self-balancing binary search tree, and * it was the first such data 阅读全文
posted @ 2021-10-13 18:29
Tianyiya
阅读(54)
评论(0)
推荐(0)

浙公网安备 33010602011771号