摘要:
写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下: F(0) = 0, F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 N > 1. 斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。 答案需 阅读全文
摘要:
输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 示例 1: 输入:head = [1,3,2] 输出:[2,3,1] 思路:一开始想的是:用一个List ,动态的记录链表节点的值,但是 List 每一次 add( n ) 耗时太久,而且最后 List 转为 int[ ] 页不方 阅读全文
摘要:
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 示例 1: 输入:s = "We are happy."输出:"We%20are%20happy." 思路:因为String 的不可性,每一次在 res 后面添加字符,都要重新开辟空间、复制之前的值,再在末尾添加,所以效率很低,如下: c 阅读全文
摘要:
在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示例: 现有矩阵 matrix 如下: [ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19] 阅读全文
摘要:
找出数组中重复的数字。 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3 思路:因为 阅读全文
摘要:
给定一个二维数组:int[ ][ ] nums = new int[ ][ ] {{1,3}, {0,4}, {5,7}} ; 如果将此二维数组按照里面的一维数组的第一个数升序排序: Arrays.sort(nums, (v1, v2) -> v1[0] - v2[0] ); // 运用lamda表 阅读全文