算法题
tydhot
gogogo
展开
-
算法题存档20200627(树)
给你一棵以 root 为根的二叉树和一个 head 为第一个节点的链表。如果在二叉树中,存在一条一直向下的路径,且每个点的数值恰好一一对应以 head 为首的链表中每个节点的值,那么请你返回 True ,否则返回 False 。一直向下的路径的意思是:从树中某个节点开始,一直连续向下的路径。class Solution { public boolean isSubPath(ListNode head, TreeNode root) { if(head == null)原创 2020-06-27 12:05:57 · 233 阅读 · 0 评论 -
算法题存档20200505
给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -&...原创 2020-05-06 00:17:04 · 164 阅读 · 0 评论 -
算法题存档2020425
给定一个 没有重复 数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]class Solution { public List<List<Integer>> permute(int[] nums...原创 2020-04-25 02:21:07 · 181 阅读 · 0 评论 -
算法题存档20191223
题目描述删除给出链表中的重复元素,使链表中的所有元素都只出现一次例如:给出的链表为1->1->2,返回1->2.给出的链表为1->1->2->3->3,返回1->2->3.public class Solution { public ListNode deleteDuplicates(ListNode head) ...原创 2019-12-23 22:32:23 · 152 阅读 · 0 评论 -
20191219算法题存档
题目描述给出两个有序的整数数组A和B,请将数组B合并到数组A中,变成一个有序的数组注意:可以假设A数组有足够的空间存放B数组的元素,A和B中初始的元素数目分别为m和npublic class Solution { public void merge(int A[], int m, int B[], int n) { int tempA = --m; ...原创 2019-12-19 22:56:59 · 191 阅读 · 0 评论 -
20190821算法题存档
There areNchildren standing in a line. Each child is assigned a rating value.You are giving candies to these children subjected to the following requirements:Each child must have at least one ca...原创 2019-08-21 23:12:52 · 156 阅读 · 0 评论 -
20190724算法题存档
题目描述Sort a linked list in O(n log n) time using constant space complexity.public class Solution { public ListNode sortList(ListNode head) { if(head == null || head.next == null) {...原创 2019-07-24 22:56:27 · 139 阅读 · 0 评论 -
20190719算法题存档
题目描述小Q得到一个神奇的数列: 1, 12, 123,...12345678910,1234567891011...。并且小Q对于能否被3整除这个性质很感兴趣。小Q现在希望你能帮他计算一下从数列的第l个到第r个(包含端点)有多少个数可以被3整除。输入描述:输入包括两个整数l和r(1 <= l <= r <= 1e9), 表示要求解的区间两端。输出描述:...原创 2019-07-19 00:59:37 · 194 阅读 · 0 评论 -
20190520算法题存档
题目描述Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.You may assume no duplicates in the...原创 2019-05-20 23:51:26 · 221 阅读 · 0 评论 -
CopyOnWriteArrayList原理及算法题存档
CopyOnWriteArrayList是通过在添加元素的时候复制一份副本,再在其基础上添加完新的元素之后,在将新的数组作为CopyOnWriteArrayList所保存的数组来达到线程安全。其add()方法如下:public boolean add(E e) { final ReentrantLock lock = this.lock; lock.lock(); ...原创 2019-05-15 01:02:15 · 128 阅读 · 0 评论 -
算法题存档20190401
Given an index k, return the k th row of the Pascal's triangle.For example, given k = 3,Return[1,3,3,1].Note:Could you optimize your algorithm to use only O(k) extra space?import java.util.Ar...原创 2019-04-02 01:15:53 · 177 阅读 · 1 评论 -
算法题存档20190315
The gray code is a binary numeral system where two successive values differ in only one bit.Given a non-negative integer n representing the total number of bits in the code, print the sequence of gr...原创 2019-03-15 00:31:14 · 180 阅读 · 0 评论 -
算法题存档20190304
题目描述牛牛有一个正整数x,牛牛需要把数字x中的数位进行重排得到一个新数(不同于x的数),牛牛想知道这个新数是否可能是原x的倍数。请你来帮他解决这个问题。输入描述:输入包括t+1行,第一行包括一个整数t(1 ≤ t ≤ 10),接下来t行,每行一个整数x(1 ≤ x ≤ 10^6)输出描述:对于每个x,如果可能重排之后变为自己的倍数输出"Possible", 否则输出"I...原创 2019-03-04 01:14:03 · 392 阅读 · 0 评论 -
算法题存档20190207
题目描述如果一个整数只能被1和自己整除,就称这个数是素数。如果一个数正着反着都是一样,就称为这个数是回文数。例如:6, 66, 606, 6666如果一个数字既是素数也是回文数,就称这个数是回文素数牛牛现在给定一个区间[L, R],希望你能求出在这个区间内有多少个回文素数。输入描述:输入包括一行,一行中有两个整数(1 ≤ L ≤ R ≤ 1000)输出描述:输出一个整...原创 2019-02-07 03:08:45 · 276 阅读 · 0 评论 -
算法题存档20190206
题目描述小易非常喜欢拥有以下性质的数列:1、数列的长度为n2、数列中的每个数都在1到k之间(包括1和k)3、对于位置相邻的两个数A和B(A在B前),都满足(A <= B)或(A mod B != 0)(满足其一即可)例如,当n = 4, k = 7那么{1,7,7,2},它的长度是4,所有数字也在1到7范围内,并且满足第三条性质,所以小易是喜欢这个数列的但是小易不喜欢{4,4...原创 2019-02-06 03:37:27 · 172 阅读 · 0 评论 -
算法题存档20190204
题目描述小易有一些彩色的砖块。每种颜色由一个大写字母表示。各个颜色砖块看起来都完全一样。现在有一个给定的字符串s,s中每个字符代表小易的某个砖块的颜色。小易想把他所有的砖块排成一行。如果最多存在一对不同颜色的相邻砖块,那么这行砖块就很漂亮的。请你帮助小易计算有多少种方式将他所有砖块排成漂亮的一行。(如果两种方式所对应的砖块颜色序列是相同的,那么认为这两种方式是一样的。)例如: s = "AB...原创 2019-02-04 08:32:28 · 202 阅读 · 0 评论 -
算法题存档20190127
题目描述假设一个探险家被困在了地底的迷宫之中,要从当前位置开始找到一条通往迷宫出口的路径。迷宫可以用一个二维矩阵组成,有的部分是墙,有的部分是路。迷宫之中有的路上还有门,每扇门都在迷宫的某个地方有与之匹配的钥匙,只有先拿到钥匙才能打开门。请设计一个算法,帮助探险家找到脱困的最短路径。如前所述,迷宫是通过一个二维矩阵表示的,每个元素的值的含义如下 0-墙,1-路,2-探险家的起始位置,3-迷宫的...原创 2019-01-27 21:22:23 · 249 阅读 · 0 评论