前端学习
qq_41063975
这个作者很懒,什么都没留下…
展开
-
剑指offer二叉搜索树的后序遍历序列
题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 思路 1.二叉搜索树的特性是左子树所有节点的值均小于根节点的值,右子树所有节点的值均大于根节点的值。 2后序遍历是先遍历左子树再遍历右子树,所以根节点一定在数组最后一位上。 3.给出的数组中,前面部分的值应小于数组最后一个值,后面部分的值应大于数组最...原创 2019-08-16 09:47:47 · 63 阅读 · 0 评论 -
剑指offer数组中出现次数超过一半的数字
题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 思路: 采用阵地攻守的思想: 第一个数字作为第一个士兵,守阵地;count = 1; 遇到相同元素,count++; 遇到不相同元素,即为敌人,同归于尽,count–;当遇到co...原创 2019-08-16 17:05:59 · 60 阅读 · 0 评论 -
剑指offer变态跳台阶
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路: 分析如下: 假设f(n) 代表n个台阶的跳法数。 当n = 1时,只有1种跳法,f(1) = 1 当n = 2时,会有两个跳台阶方式,一次1阶或者2阶 当n = 3时,会有三种跳台阶方式,1阶、2阶、3阶 那么就是第一次跳出1阶后面剩下:f(3-1);第一次跳出2阶,剩...原创 2019-08-13 11:49:02 · 83 阅读 · 0 评论 -
圆圈中最后剩下的数(约瑟夫问题)
题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0…m-1报数…这样下去…直到剩下最后一...原创 2019-08-29 18:19:28 · 91 阅读 · 0 评论