- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 剑指offer-35-复杂链表的复制
题目 请实现函数ComplexListNode* Clone(ComplexListNode* pHead),复制一个复杂链表。在复杂链表中,每个结点除了有一个m_pNext指针指向下一个点外,还有一个m_pSibling 指向链表中的任意结点或者nullptr。回到顶部思路 思路1:先复制结点,用next链接,最后根据原始结点的sibling指针确定该sibling结点距离头结点的...
2019-07-27 14:57:48 178
原创 剑指offer-67-把字符串转换成整数
题目 请你写一个函数StrToInt,实现把字符串转换成整数这个功能。当然,不能使用atoi或者其他类似的库函数。回到顶部思路 题目很简单,主要就是实现对每个字符转化为数字,并进行累加即可。但是有很多特殊情况都需要考虑进去,例如null、空字符串、带有正负号、字符不是数字、溢出等等。对于非法的特殊输入,返回值为0,还要用一个全局变量进行标记。写代码时一定要考虑清楚各种测试用例。p...
2019-07-24 21:56:59 293
原创 剑指offer-39-数组中出现次数超过一半的数字
剑指offer(39) 数组中出现次数超过一半的数字package offer;import org.junit.Test;/** * 采用阵地攻守的思想: 第一个数字作为第一个士兵,守阵地;count = 1; 遇到相同元素,count++; 遇到不相同元素,即为敌人,同归于尽,count--;当遇到count为0的情况,又以新的i值作为守阵地的士兵,继续下去,到最...
2019-07-18 22:13:20 180
原创 剑指offer-38-串字符串的排列(套路解决递归算法问题)
package offer;import java.util.ArrayList;import java.util.Collections;/** *题目:输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc, 则打印出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。 * @author kankan * @creater...
2019-07-17 22:13:04 316
原创 剑指offer-31-栈的压入、弹出序列
题目 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1、2、3、4、5是某栈的压栈序列,序列4、5、3、2、1是该压栈序列对应的一个弹出序列,但4、3、5、1、2就不可能是该压栈序列的弹出序列。package offer;import org.junit.Test;import java.util.Stac...
2019-07-02 20:44:22 152
原创 剑指offer-19-包含Min函数的栈
题目:定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min、push及pop的时间复杂度都是O(1)。把每次的最小元素(之前的最小元素和新压入栈的元素两者的较小值)都保存起来放到另外一个辅助栈里。下图展示了栈内压入3、4、2、1之后接连两次弹出栈顶数字再压入0时,数据栈、辅助栈和最小值的状态。 从表中我们可以看出,如果每次都把最小元素压入辅助栈,那么就...
2019-07-02 19:33:56 194
原创 剑指offer-29-顺时针打印矩阵
题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。例如:如果输入如下矩阵:1 2 3 45 6 7 89 10 11 1213 14 15 16则依次打印出数字1、2、3、4、8、12、16、15、14、13、9、5、6、7、11、10。思路:思路 每次打印矩阵最外面的一圈(用方法printMatrixInCircle()表示),每次都是这个操作,所以可...
2019-07-01 21:24:08 311
STL学校演讲比赛介绍
2018-03-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人