- 博客(5)
- 资源 (2)
- 收藏
- 关注
原创 【腾讯2018实习笔试题】求周期性改变元素符号的数组的和
题目描述:输入格式为一行两个数,比如8 2,则表示为这样一个数组{-1,-2,3,4,-5,-6,7,8},-1-2+3+4-5-6+7+8 = 8,输出格式为求这个数组的和。比如输入7 1,表示一个数组{-1,2,-3,4,-5,6,-7}注意,起始元素都是-1开始。解题方案:这是腾讯18年实习笔试的第一题,很简单,用辅助3个变量在时间复杂度bigO(n)内就能解决。代码:import java...
2018-04-09 16:49:11 338
原创 使用数组实现固定长度的队列结构
使用数组实现固定长度的队列结构,很多人coding时,都会使用两个变量start和end作为指针,来表示队列的头和尾,然后判断end大于start,start一直追赶end的这种方式实现,这其中有些边界条件判断来判断去,end到达尾部然后回到头部,end又小于start等等情况。coding起来比较复杂。我的实现呢,再添加一个变量size,用来表示当前队列还有几个元素,只要size大于数组长度就不...
2018-04-03 11:15:53 1904
原创 使用数组实现固定大小的栈结构
使用数组实现固定大小的栈,很简单,水一水。入栈规则:使用一个指针指向栈内元素的上一个位置,如果入栈,只需要在指针位置放入元素即可,然后指针再指向上一个位置,如果超出数组长度,则报错出栈规则:返回指针指向位置的下一个元素,如果小于0,则报错代码:/* * 使用数组实现一个栈 */public class UsingArrayRealizeStack { public static int...
2018-04-03 09:47:00 908
原创 【携程2018校招】数组中非零元素稳定的放到数组前面,零元素放到数组后面
题目描述:给定一个数组,在不申请新数组的情况下,把数组中非零元素稳定的放到数组前面,零元素放到数组后面。稳定就是非零元素的相对位置不要发生改变。题目很简单,水一下博客。解题方案:第一种方法,就是类似如插入排序的方法,遍历数组,如果遇到非零元素就将其向前移动,移动至前面的元素不为0或至数组顶端为止第二种方法,操作更少,用一个从零开始的辅助下标,遍历数组,如果遇到非零元素就将其赋给辅助下标的位置,然后...
2018-04-02 22:34:52 776
原创 【剑指offer】判断B是不是A的子树
题目描述:输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)解题方案:看代码,全都注释了。代码:public class HasSubtree { public static class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public...
2018-04-02 21:00:55 1520
基础数据结构和算法(C、C++、Java各一套)
2018-03-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人