摘要:"43. 字符串相乘" 高精度乘法,这题敲的太多了。。直接交了 阅读全文
posted @ 2018-07-19 23:13 ACBingo 阅读 (210) 评论 (0) 编辑
摘要:"42. 接雨水" 思路:一块柱子能接水的量取决于它左右两边最高的柱子中较短的一个。 阅读全文
posted @ 2018-07-19 23:08 ACBingo 阅读 (164) 评论 (0) 编辑
摘要:"41. 缺失的第一个正数" 注意这题要求时间复杂度应为O(n),并且只能使用常数级别的空间。 挺有意思的一个题。 思路: 通过交换元素的位置使得正确的位置仅存放正确的数字,例如给定一个数字3那么他应该在第三个位置,下标为2 。当数字 n 或 0 && nums[i] != i + 1) { if 阅读全文
posted @ 2018-07-19 22:40 ACBingo 阅读 (30) 评论 (0) 编辑
摘要:"40. 组合总和 II" 这题跟上题做法几乎一样,只不过每个数能取多次改成了最多能取一次,同时candidates可能会出现相同字符,感觉还没有上一个题难。 代码仅需改两处即可,直接看代码把,有注释的地方即是改过的 class Solution { public List combinationS 阅读全文
posted @ 2018-07-19 22:04 ACBingo 阅读 (144) 评论 (0) 编辑
摘要:"39. 组合总和" 直接暴力思路,用dfs+回溯枚举所有可能组合情况。难点在于每个数可取无数次。 我的枚举思路是: 外层枚举答案数组的长度,即枚举解中的数字个数,从1个开始,到target/ min(candidates)终止。 然后内层就可以dfs搜索了, 缕清状态的转换与回溯,题就做出来了。 阅读全文
posted @ 2018-07-19 21:45 ACBingo 阅读 (363) 评论 (0) 编辑
摘要:"38. 报数" 水题 阅读全文
posted @ 2018-07-19 20:56 ACBingo 阅读 (458) 评论 (0) 编辑
摘要:"37. 解数独" 1A 这个题其实15分钟左右就敲出来并且对了。。。但是由于我输错了一个数。。导致我白白debug一个多小时。。 没啥难度,练递归 dfs的好题 class Solution { private int which(int i, int j) { if (i 阅读全文
posted @ 2018-07-19 20:42 ACBingo 阅读 (398) 评论 (0) 编辑
摘要:"非阻塞同步算法与CAS(Compare and Swap)无锁算法" 这篇问题对java的CAS讲的非常透彻! 锁的代价 1. 内核态的锁的时候需要操作系统进行一次上下文切换,加锁、释放锁会导致比较多的上下文切换和调度延时,等待锁的线程会被挂起直至锁释放。在上下文切换的时候,cpu之前缓存的指令和 阅读全文
posted @ 2018-07-19 11:24 ACBingo 阅读 (79) 评论 (0) 编辑