摘要:
题目描述 给定一个m*n的矩阵,如果有一个元素是0,就把该元素所在的行和列上的元素全置为0,要求使用原地算法。 拓展: 你的算法有使用额外的空间吗? 一种比较直接的算法是利用O(m,n)的空间,但是这不是一个好的解法 使用简单的改进可以在O(m+n)的空间解决这个问题,但是还不是最佳的解法 你能在常 阅读全文
摘要:
题目描述 请计算给出的数组(至少含有一个数字)中具有最大和的子数组(子数组要求在原数组中连续) 例如:给出的数组为[−2,1,−3,4,−1,2,1,−5,4], 子数组[−2,1,−3,4,−1,2,1,−5,4],具有最大的和:6. 拓展: 如果你已经提出了O(n)的解决方法,请尝试使用分治算法 阅读全文
摘要:
题目描述 给定一个整数n,将数字1到n2n^2n2按螺旋的顺序填入n×n的矩阵 例如: 给出的n=3, 你应该返回如下矩阵: [↵ [ 1, 2, 3 ],↵ [ 8, 9, 4 ],↵ [ 7, 6, 5 ]↵]题目分析:这个题属于常规题,就是旋转着给数组赋值,需要搞清楚行和列的关系,当转完一圈以 阅读全文
摘要:
题目描述 将两个有序的链表合并为一个新链表,要求新的链表是通过拼接两个链表的节点来生成的。 题目分析: 本问题是一个常规问题,先先创建一个表头节点,然后比较给定的两个链表的节点的值,依次连到表头后面(如果一个表已经遍历到尾节点了,另一个表直接连接到新链表的后面即可)。然后返回新表头的下一个节点即可。 阅读全文
摘要:
题目描述 你在爬楼梯,需要n步才能爬到楼梯顶部 每次你只能向上爬1步或者2步。有多少种方法可以爬到楼梯顶部? 题目分析: 当n等于0时,有0种方法。当n等于1时,有1种方法,当n等于2时,有两种方法,当n大于2时共有climbStairs(n-1)+climbStairs(n-2)种方法,符合斐波那 阅读全文