上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 30 下一页

2019年7月7日

[剑指Offer]26-树的子结构

摘要: 题意 判断一棵树(参数二)是不是另一棵树(参数一)的子结构。 题解 递归第一棵树,找两棵树中值一样的节点。若找到后,用另一个函数判断以相同值得节点为根的树2是不是树1的子结构。 代码 class TreeNode{ double val; TreeNode lChild; TreeNode rChi 阅读全文

posted @ 2019-07-07 22:20 coding_gaga 阅读(106) 评论(0) 推荐(0) 编辑

[剑指Offer]49-丑数

摘要: 题目 把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。 题解 把丑数按顺序依次算好放在数组中, ; 此外更新当前的三个指针multi2Idx、multi3Idx、mu 阅读全文

posted @ 2019-07-07 22:14 coding_gaga 阅读(147) 评论(0) 推荐(0) 编辑

2019年7月6日

[剑指Offer]66-构建乘积数组

摘要: 题目 给定一个数组A[0,1,...,n 1],请构建一个数组B[0,1,...,n 1],其中B中的元素B[i]=A[0] A[1] ... A[i 1] A[i+1] ... A[n 1]。不能使用除法。 题解 把数组B想象成用矩阵构建,B[i]为矩阵中第i行所有元素乘积,构建befI和afte 阅读全文

posted @ 2019-07-06 13:56 coding_gaga 阅读(94) 评论(0) 推荐(0) 编辑

[剑指Offer]65-不用加减乘除做加法

摘要: 题目 写一个函数,求两个整数之和,要求在函数体内不得使用+、 、 、/四则运算符号。 题解 用位运算模拟加法的三步: 无进位加法:异或运算。 进位:与运算再左移一位。 直到进位为0结束。 代码 public class Main { public static void main(String[] 阅读全文

posted @ 2019-07-06 13:50 coding_gaga 阅读(99) 评论(0) 推荐(0) 编辑

2019年6月26日

[剑指Offer]57-和为s的数字

摘要: 题目一 输入一个递增的数组和一个数字,在数组中查找2个数字,是他们的和正好为S,如果有多对的和为S,则输出任意一对即可。 题解 关键信息是数组有序。初始化i,j指向第一个和第二个数,与S比较,若小了, j,若大了,++i。舍弃掉的元素表示它再也不能和别的数相加等于目标数了,充分利用了有序性。时间复杂 阅读全文

posted @ 2019-06-26 12:56 coding_gaga 阅读(142) 评论(0) 推荐(0) 编辑

2019年6月24日

[程序员代码面试指南]递归和动态规划-数字字符串转换为字母组合的种数(DP)

摘要: 题意 给一个字符串,只由数字组成,若是'1' '26',则认为可以转换为'a' 'z'对应的字母,问有多少种转换方法。 题解 状态转移很好想,注意dp多开一位,dp[0]为dp[2]的计算做准备。dp[i]表示到索引为i 1的字符(含)为止转换方法数。 代码 public class Main { 阅读全文

posted @ 2019-06-24 23:09 coding_gaga 阅读(577) 评论(0) 推荐(0) 编辑

[程序员代码面试指南]二叉树问题-派对的最大快乐值

摘要: 题意 一棵多叉树代表员工的上下级关系,孩子节点是父节点的直接下级。节点代表员工,属性包括快乐值和孩子节点列表。 大家参加了party,要求一个员工去了则它的所有直接下级都不能去,问参加party能得到的最大快乐值是多少。 题解 我原本的思路是一层员工去不去是它上面一层去和不去两种状态转移过来的,但是 阅读全文

posted @ 2019-06-24 23:04 coding_gaga 阅读(752) 评论(0) 推荐(0) 编辑

2019年6月23日

[计算机网络]图解HTTP阅读笔记

摘要: 总述 书的定位:一本十分浅显的HTTP书籍,主要介绍了HTTP与HTTPS。适合入门了解,很多地方都是蜻蜓点水,但稍微深入的地方能让人了解重点在哪,后面应该有针对性地阅读深入书籍。 主要内容:介绍了TCP/IP;介绍了HTTP协议的一些特点;HTTP报文内部的一些格式、特点;HTTP状态码;Web服 阅读全文

posted @ 2019-06-23 18:54 coding_gaga 阅读(259) 评论(0) 推荐(0) 编辑

[程序员代码面试指南]最长递增子序列(二分,DP)

摘要: 题目 例:arr=[2,1,5,3,6,4,8,9,7] ,最长递增子序列为1,3,4,8,9 题解 step1:找最长连续子序列长度 dp[]存以arr[i]结尾的情况下,arr[0..i]中的最长递增子序列的长度。 额外加一个ends[]数组,初始化ends[0]=arr[0],其他为0。有一个 阅读全文

posted @ 2019-06-23 16:20 coding_gaga 阅读(253) 评论(0) 推荐(0) 编辑

[程序员代码面试指南]递归和动态规划-数组中的最长连续序列

摘要: 题目 给定无需数组arr,返回器中最长的连续序列的长度。 举例子:arr=[100,4,200,1,3,2],最长连续序列为[1,2,3,4],返回4. 题解 法一:排序,再遍历找。时间复杂度O(nlogn),空间复杂度O(n) 法二: 用map,key代表遍历过的某个数,value代表key这个数 阅读全文

posted @ 2019-06-23 12:04 coding_gaga 阅读(146) 评论(0) 推荐(0) 编辑

上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 30 下一页

导航