
编程题
淹不死的水
这个作者很懒,什么都没留下…
展开
-
判断两个链表是否相交
这是一道比较综合的题目。将链表中关于环和相交的问题聚集在一起了,关键是要思路清晰。思路如下:/* * 判断链表是否有环 * 1 如果一个有环一个无环,则肯定不相较 * 2 如果都无环,则遍历到尾部,看看最后一个节点是否相等即可 * 如果要找到第一个相交的点,则让长的链表先走len1-len2步,再同时走,找到相等的节点即可原创 2017-04-07 10:06:52 · 388 阅读 · 0 评论 -
求完全二叉树的节点数 时间复杂度小于O(N)
给定一棵完全二叉树的根节点root,返回这棵树的节点个数。如果完全二叉树的节点数为N,请实现时间复杂度低于O(N)的解法。给定树的根结点root,请返回树的大小。二分的思想。看完全二叉树的最后的最右一个节点的位置思路: 1 找到完全二叉树的最左节点,也就是求左子树的深度 2 找到完全二叉树头节点右子树中的最左节点,记录右子树深度 3 如果两个深度相等,说明头节点左子树是一棵满二叉树,使用公式原创 2017-04-09 21:23:49 · 4436 阅读 · 3 评论 -
360春招3.25在线编程题解
第一题: 小明同学最近学习了概率论,他了解到数学期望的定义:设X为一个随机变量,X可以取n种不同的取值x1,x2,x3,…,xn。取x1的概率为p1,取x2的概率为p2,以此类推。定义随机变量X的数学期望为:E[X]=x1*p1+x2*p2+…+xn*pn。小明回到家中,他想编程计算数学期望,你能帮助他么?输入第一行一个数n(1<=n<=100),接下来有n行,第i行有两个数xi和pi,xi和pi原创 2017-03-26 12:23:10 · 645 阅读 · 0 评论