AIAS编程有道
AIASPerfect Programming
日期:2019年8月28日
正文:934字 0 图
预计阅读时间:4分钟
来源:原创
1
总结
到目前,自己结合牛客网,CSDN博客以及《剑指Offer》把《剑指Offer》这本书的主要题目过了一遍,其中程序的实现也是使用Java和Python。也发现一些问题:
相同的编程思想,有时使用Java实现后在牛客网能够通过测试,而Python不能通过,这可能是Java编译成字节码文件运行快一点吧2除此之外。
Java中有很多的数据结构,例如栈Stack,Queue,LinkedList等数据结构,以及比较器Compartor等,当我们了解这些数据结构以及其特性之后,能够快速地编写程序,而对于Python的话可能一个list类型就可以代替上面很多数据结构,各有利弊,细分的数据结构可能在书写的时候代码较为臃肿,而Python可能一个数据类型涵盖太多,那么在书写程序的时候就需要更加细心。
这些题目考察知识点较多,其中不乏有字符串、数值、数组、栈、队列、二叉树,动态规划,分治,回溯等,要求有一定的数据结构和算法基础,这也是编程基本功的体现。
即使当前Java、Python都会集成有诸如排序算法、栈等算法和数据结构的封装和集成,但是如果对于一个想成为算法工程师的程序员,其内在的实现思想还是有必要知晓的,其可为我们解决其他问题提供很多思路,这也是我在做题时发现的,当然在一些问题中,我们也没有必要去自己收到实现排序算法以及一些数据结构,主要是领会算法的思想。
2
题目分类
以下根据个人经验以及参考网上资料把已经做过的题目分类汇总如下,需要说明的是一道题目可以有多种解法,分类也不唯一,具体题目还需要看个人理解:
LinkedList
Tree
Stack & Queue
Heap
HashTable
图
具体算法-斐波那契数列
具体算法-搜索算法
具体算法-全排序
具体算法-动态规划
具体算法-回溯
具体算法-排序
具体算法-位运算
其他算法
3
后记
以上也仅是个人总结,难免因为个人能力问题总结不到位,各位进凑合看看吧,哈哈。当然上面的题目也只是我们练手的基础,如果想有更进一步地提升,个人建议在业余时间可以去LeetCode等刷题平台去看看一些问题,思考如何解决,然后尝试编程,然后看能否再提高算法的性能,通过这些,一步一步,踏踏实实,我相信能够提高自己的编程能力,在将来面试中也会有有所裨益。当前LeetCode平台提供了比较好的刷题体验,具体大家可以去尝试,自己也在上面编程、学习和做笔记,真的能够锻炼一个人的思维,也不得不佩服那些大牛的奇怪解题思维,但是确实很好,自己也会把一些比较好的题目以及结合自己的思考书写分享出,感谢各位粉丝的支持,有问题可以留言,提建议哦!
每次学一点英语
additive model加法模型
hypothesis space 假设空间
margin 间隔
supervised learning 监督学习
pruning 剪枝
THE END
不需要你是一个很强的人,不需要你很高智商,不需要你是千里马,你只要像老黄牛一样,每天哪怕做一点点,往目标前进一点点,你就会成功。可是成功又很难,因为在通往成功的路上,很少人能够坚持下来。在坚持的过程中,很多人都选择了放弃。
它,不仅仅是一个码,更是一个了解算法、数学、编程、技巧等等一些神器的一道门!
领取专属 10元无门槛券
私享最新 技术干货