剑指offer
无崖子0
经理说,这小伙子不错
展开
-
每日刷算法--剑指offer从尾到头打印链表
题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 分析:链表倒置有两种思路,第一种是可以从修改节点的next属性进行倒置,第二种可以把节点放在栈中,然后从栈顶开始取出即可实现倒置的效果 代码: 第一种: struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } .原创 2020-05-23 20:35:41 · 355 阅读 · 0 评论 -
每日刷算法--剑指offer替换空格
题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 分析: 将长度为1的空格替换为长度为3的“%20”,字符差的产度变长。 如果允许我们开辟一个新的数组来存放替换空格后的字符串, 那么这道题目就非常简 单。设置两个指针分别指向新旧字符串首元素, 遍历原字符串,如果碰到空格就在新字符串上填入“%20”, 否则就复制元字符串上的内容。但是如果面试官要求 在原先的字符串上操作,并且保证原字..原创 2020-05-20 18:28:51 · 345 阅读 · 0 评论 -
每日刷算法--剑指offer二维数组中的查找
题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 一、分析 这是一个行列有序二维数组,每行从左到右递增,每列从上到下地递增:例如[1,2,4,5,6] ...原创 2020-05-19 17:39:59 · 269 阅读 · 0 评论