![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指offer
是会魔法的friends
这个作者很懒,什么都没留下…
展开
-
替换空格
题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 解题步骤: 计算空格数。 计算新字符串长度。 从后往前替换空格(减少移动字符串的次数)。 class Solution{ public: void replaceSpace(char *str,int ...原创 2019-01-24 11:42:34 · 108 阅读 · 0 评论 -
从头到尾打印链表
题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 class Solution { public: vector<int> printListFromTailToHead(ListNode* head) { vector <int> result; stack<int> arr; ...原创 2019-01-25 14:34:11 · 79 阅读 · 0 评论 -
二维数组中的查找
题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 class Solution{ public: bool Find(int target,vector<vector<int>>array) ...原创 2019-01-22 09:54:20 · 70 阅读 · 0 评论 -
变态跳台阶
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 解题思路:与跳台阶问题类似,得出规律:f(n)=2*f(n-1),再写出递归。 class Solution { public: int jumpFloorII(int number) { if (number <= 0) { ...原创 2019-02-01 10:24:32 · 190 阅读 · 0 评论 -
跳台阶
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 解题思路:根据题目的描述,可以找出规律:f(n)=f(n-1)+f(n-2),于是问题迎刃而解。 class Solution { public: int jumpFloor(int number) { if (number <= ...原创 2019-01-29 09:59:34 · 87 阅读 · 0 评论