随笔分类 -  算法

摘要:题目: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否存在该整数。 解答: 阅读全文
posted @ 2019-02-16 17:15 林木声 阅读(921) 评论(0) 推荐(0)
摘要:题目: 在一个m×n的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格直到到达棋盘的右下角。给定一个棋盘及其上面的礼物,请计算你最多能拿到多少价值的礼物? 解答: 使用动态规划,f(i,j)表示到达坐标[i,j]时能 阅读全文
posted @ 2019-02-16 14:52 林木声 阅读(359) 评论(0) 推荐(0)
摘要:代码: 测试: 阅读全文
posted @ 2019-02-16 12:01 林木声 阅读(1017) 评论(0) 推荐(0)
摘要:题目: 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理 解答: 阅读全文
posted @ 2019-02-15 17:01 林木声 阅读(867) 评论(0) 推荐(0)
摘要:题目: 输入一个递增排序的数组和一个数字 s。 在数组中查找两个数,使得它们的和正好是 s。 如果有多对数字的和等于 s,输出任意一对即可。 解答: 阅读全文
posted @ 2019-02-15 16:52 林木声 阅读(1094) 评论(0) 推荐(0)
摘要:题目: 一个整型数组里除了两个数字之外,其他的数字都出现了两次 解答: 我们从头到尾异或数组中的每个数字,那么最终的结果是两个只出现一次数字的异或的结果,由于两个数字不一样,那么异或的结果肯定不为0,那么这个数字的二进制表示中至少有一位为1。 阅读全文
posted @ 2019-02-15 16:33 林木声 阅读(523) 评论(0) 推荐(0)
摘要:题目: 输入一颗二叉树的根节点,求该树的深度。 解答: 阅读全文
posted @ 2019-02-15 16:21 林木声 阅读(661) 评论(0) 推荐(0)
摘要:题目: 输入两个单向链表,找出它们的第一个公共结点 解答: 阅读全文
posted @ 2019-02-14 15:54 林木声 阅读(386) 评论(0) 推荐(0)
摘要:1 public class Solution { 2 public static void main(String[] args) { 3 4 } 5 6 public static void mergeSort(int[] nums) { 7 int[] tmp = new int[nums.length]; 8 9 ... 阅读全文
posted @ 2019-02-14 15:03 林木声 阅读(189) 评论(0) 推荐(0)
摘要:题目: 在数组中的两个数字如果前面一个数字大于后面的数字, 则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 解答: 阅读全文
posted @ 2019-02-14 14:14 林木声 阅读(1242) 评论(0) 推荐(0)
摘要:题目: 输入一个正整数数组,把数组里所有数字拼接起来排成一个数。打印能拼接出所有数字中最小的一个。 解答: 阅读全文
posted @ 2019-02-14 12:53 林木声 阅读(1374) 评论(0) 推荐(0)
摘要:题目: 输入一个整型数组,数组里有正数,也有负数。 数组中一个或连续的多个整数组成一个子数组。 求所有子数组的和的最大值。要求时间复杂度为 O(n)。 解答: 阅读全文
posted @ 2019-02-14 12:37 林木声 阅读(1936) 评论(1) 推荐(0)
摘要:题目: 数组中有一个数字出现的次数超过数组长度的一半。请找出这个数字。 解答: 阅读全文
posted @ 2019-02-14 12:29 林木声 阅读(816) 评论(0) 推荐(0)
摘要:题目: 输入一个字符串,打印出该字符串中字符的所有排列 解答: 阅读全文
posted @ 2019-02-13 17:10 林木声 阅读(1837) 评论(0) 推荐(0)
摘要:题目: 输入一颗二叉搜索树,将该二叉搜索树转换成一个排序的双向链表 要求不能创建人和新的结点,只能调整树中结点指针的指向 解答: 阅读全文
posted @ 2019-02-13 13:59 林木声 阅读(311) 评论(0) 推荐(0)
摘要:题目: 输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。 解答: 阅读全文
posted @ 2019-02-13 12:35 林木声 阅读(738) 评论(0) 推荐(0)
摘要:题目: 输入一个数组,判断该数组是不是某二叉搜索树的后序遍历结果。 解答: 阅读全文
posted @ 2019-02-13 12:08 林木声 阅读(561) 评论(0) 推荐(0)
摘要:题目: 输入两个整数序列 第一个序列表示栈的压入顺序,第二个序列是弹出序列。 判断第二个序列是否是该栈的弹出序列。 假设所有的入栈的数字均不相等。 解答: 阅读全文
posted @ 2019-02-12 15:30 林木声 阅读(173) 评论(0) 推荐(0)
摘要:题目: Validate if a given string is numeric Some examples:"0" > true"0.1" >true"abc" > false 解答: 阅读全文
posted @ 2019-02-08 16:00 林木声 阅读(170) 评论(0) 推荐(0)
摘要:1 private static final int maxDiv10 = Integer.MAX_VALUE / 10; 2 3 public int atoi(String str) { 4 int i = 0; 5 int n = str.length(); 6 // 首先忽略字符串前面的空格 7 while(i maxDiv10 || n... 阅读全文
posted @ 2019-02-02 18:10 林木声 阅读(158) 评论(0) 推荐(0)