LeetCode过程中值得反思的细节 以下题号均指LeetCode剑指offer题库中的题号 本文章将每周定期更新,当内容达到10题左右时将会开下一节. 二维数组越界问题04 public static void main(String[] args) { int[][]x = {{}}; System.out.println(x.length+" "+x[0].length); int[][]y = {{1}}; System.out.println(y.length+"…
今天开始更新leetcode上<剑指Offer>的题解,先从简单难度开始.预计按下列顺序更新: 简单难度:每日5题 中等难度:每日3题 困难难度:每日1题 17 - 打印从1到最大的n位数 要求:比如打印三位数,就从1打印到999.以此类推. 题解:数据范围很小不怕越界,暴力从\(1\)打到\(10^n-1\)即可. /** * @param {number} n * @return {number[]} */ // 10^n - 1 var printNumbers = function(n…
又开了一个笔记专题的坑,未来一两周希望能把<剑指Offer>的题目刷完…
第 1 天 栈与队列(简单) 剑指 Offer 09. 用两个栈实现队列 class CQueue { public: CQueue() { } stack<int>s1,s2; void appendTail(int value) { s1.push(value); } int deleteHead() { if(s2.empty()) { while(!s1.empty()) { s2.push(s1.top()); s1.pop(); } } if(s2.empty()) return…
剑指offer 面试题29:数组中出现次数超过一半的数字 提交网址: http://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163?tpId=13&tqId=11181                                                 参与人数:3512  时间限制:1秒  空间限制:32768K 本题知识点:数组 题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一…
剑指 Offer 22. 链表中倒数第k个节点 题意 输入一个链表,输出该链表中倒数第k个节点.为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点. ​ 例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1.2.3.4.5.6,则这个链表的倒数第 3 个节点是值为 4 的节点. ​ 链表节点的定义如下: struct ListNode { int val; ListNode* next; ListNode(int x) : val(x), next(NULL) {…
面试题5:替换空格 请实现一个函数,将一个字符串中的每个空格替换成“%20”.例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. class Solution { public: void replaceSpace(char *str,int length) { ) return; /*originalLength 为字符串str的实际长度*/ ; ; ; while(str[i] != '\0') { ++ originalLength; if…
字符串 面试题5:替换空格 面试题20:表示数值的字符串 面试题58:翻转字符串 面试题58(二):左旋转字符串…
字符串排列和PermutationsII差不多 Permutations第一种解法: 这种方法从0开始遍历,通过visited来存储是否被访问到,level代表每次已经存储了多少个数字 class Solution { public: vector<vector<int>> permute(vector<int>& nums) { vector<vector<int> > result; if(nums.empty()) return r…
题目描述: 输入一个字符串,按字典序打印出该字符串中字符的所有排列.例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 输入描述: 输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母. 分析: 全排列. 先从小到大排序. 从后往前找到相邻两个值,左边<右边的. 从后往前找到第一个大于左边的数. 交换倒数第一个大于左边的数和左边的数. 将右边到末尾的数全部翻转. 循环上面2-5步,直到找不到左边<右边的情况.…