第十六章 新技术的诱惑
杨辰饶有兴趣的打开链接jianqingyang ⊕cc
跳出了一个注册验证jianqingyang ⊕cc
杨辰输入自己的手机号,然后,通过微信账号,登陆上去jianqingyang ⊕cc
进入第一个挑战关卡,一道算法问题jianqingyang ⊕cc
看了题目,杨辰不由来了兴趣jianqingyang ⊕cc
求一个字符串中最长不重复子串的长度,这是一道关于大数据的算法的题题jianqingyang ⊕cc
有点难度,不过,难不倒杨辰jianqingyang ⊕cc
这一题有两种解法,最简单的办法就是暴力破解法,另一种是巧妙使用指针来求解jianqingyang ⊕cc
暴力破解法简单粗暴,但是效率太低,用穷举法列出所有可能的结果,然后,根据附加条件进一步筛选符合条件的解jianqingyang ⊕cc
杨辰不打算使用,而是运用指针法求解,效率更高,但需要对指针有较深理解jianqingyang ⊕cc
用三个整形maxLength、start、end分别存储最大子串长度、子串起始位置、子串结束,……jianqingyang ⊕cc
杨辰调出编程工具,接连敲击代码jianqingyang ⊕cc
很快,杨辰在关卡下方的答案框,粘贴下题目的答案代码窜,点击发送jianqingyang ⊕cc
没多久,关卡验证了答案,给予通过jianqingyang ⊕cc
第二道关卡的题目跳出:一个二叉树,求路径之和
看了题目,杨辰眉头一皱,这是一道客户端的算法题,经过一翻思考,他还是有思路将这道题目解出来jianqingyang ⊕cc
第三题,第四题,……,杨辰一路过关斩将jianqingyang ⊕cc
一直到了第十关,杨辰被题目难住了,苦苦想不出解题的思路jianqingyang ⊕cc
有一个很大的整数list,需要求这个list中所有整数的和,如何实现多核并算,计算一个准确结果jianqingyang ⊕cc
这种算法不在杨辰的掌握之中,杨辰唯一的思路便是,采用多线程(任务),并且还要分割List,每一小块的List采用一个线程(任务)进行计算其和jianqingyang ⊕cc
那么必须要等待所有的线程(任务)完成之后才能得到正确的结果,可是,要怎么才能保证同一时间获得“所有的线程(任务)完成之后输出的结果?
……
杨辰眉头紧皱,久久想不