程序员编程艺术第一~十章集锦与总结--面试、算法、编程

作者:July、编程艺术室。
出处:http://blog.csdn.net/v_JULY_v 

围绕“面试”、“算法”、“编程”三个主题的程序员编程艺术系列(简称TAOPP系列)从今年4月写第一篇起,至今快有2个月。2个月的创作中,写了十章,共计13篇文章。这是本人的第4大原创作品,不过与之前微软面试100题系列红黑树系列,及十三个经典算法研究系列相比,编程艺术系列的作者已经不止我一个人,而是一个工作室了,它的名字叫做编程艺术室。

编程艺术系列最初名为程序员面试题狂想曲,即为面试服务,后来随着加入与我一起创作的人越来越多,我们逐渐意识到,为面试服务不应该成为我们最终或最主要的目的,而应该注重提高广大初学者的编程能力,以及如何运用编程技巧和高效的算法解决实际应用问题。这才是计算机科学与编程的本质。于是,我们便把程序员面试题狂想曲系列更名为程序员编程艺术系列,然后把狂想曲创作组确定为编程艺术室。并提出了我们的宗旨,即如下,编程艺术室致力于以下三点工作:

  1. 针对一个问题,不断寻找更高效的算法,并予以编程实现。
  2. 解决实际中会碰到的应用问题,如第十章、如何给磁盘文件排序。
  3. 经典算法的研究与实现。

总体突出一点:编程,如何高效的编程解决实际问题。

刚开始的时候,我们是不敢给自己戴艺术这个高帽子的,因为艺术的提炼是一个非常非常艰难的过程,且我们全部都是一群庸人。但是我们很想也非常乐意接受这个挑战。所以,一边带着万分的惶恐,一边认真细心的创作每一章,等到发布后,再对每一章任何一个细节仔细推敲与琢磨,反复思考,反复修正,反复完善,绝不轻易放过任何一个问题,漏洞,和bug。但即便如此,仍然冒出了很多的问题。幸运的是,有广大的读者朋友们对编程艺术系列和我们给予热心的指导与优化建议,更重要的是他们还耐心细致的对编程艺术系列提出了非常多的且异常宝贵的批评指正与修订完善的意见。

没有编程艺术室全部人员的加入创作,编程艺术系列将比现在所呈现在大家面前的还要糟糕(至少我个人现在是这么认为的),而如果没有众多网友,朋友们的修正与完善,编程艺术系列将更显不足,从而失去它本身该有的持久动力与明天。所以,非常感谢所有热心的朋友给予编程艺术系列所有的指导和意见,你们的反馈给了我们的创作很大很大的帮助,同时,也感谢本社区编辑的推荐。非常感谢。最后,恳请广大读者对编程艺术系列继续监督,并随时予以批评指正(我们不能残留任何一个bug)。因为编程艺术系列最后可能要写到第六十章。谢谢。

ok,以下是已经写了的编程艺术系列的前二十二章,共17篇文章,希望你能从中感受到编程的技巧与乐趣(点击链接,即可打开):

  • 无私分享,造福天下 

    • 第一章、左旋转字符串
    • 第二章、字符串是否包含问题
    • 第三章、寻找最小的k个数
    • 第三章续、Top K算法问题的实现
    • 第三章再续:快速选择SELECT算法的深入分析与实现
    • 三之三续、求数组中给定下标区间内的第K小(大)元素
    • 第四章、现场编写类似strstr/strcpy/strpbrk的函数
    • 第五章、寻找满足条件的两个或多个数
    • 第六章、求解500万以内的亲和数
    • 第七章、求连续子数组的最大和
    • 第八章、从头至尾漫谈虚函数
    • 第九章、闲话链表追赶问题
    • 第十章、如何给10^7个数据量的磁盘文件排序
    • 第十一章、最长公共子序列(LCS)问题
    • 第十二~十五章:数的判断,中签概率,IP访问次数,回文问题(初稿)
    • 第十六~第二十章:全排列,跳台阶,奇偶排序,第一个只出现一次等问题
    • 第二十一~二十二章:出现次数超过一半的数字,最短摘要的生成
    • 第二十三、四章:杨氏矩阵查找,倒排索引关键词Hash不重复编码实践

编程艺术系列已经发布的上十章,仍有很多很多的问题与不足,但永久勘误,永久优化。如果读者朋友对编程艺术系列任何一章有任何问题,和建议,或者发现了以上任何一章的问题,错误,漏洞,和bug,欢迎及时反馈给我们,我们将感激不尽。当然,如果有兴趣,我们也欢迎您加入我们--编程艺术室:

  1. 编程能力较强
  2. 有一定的业余时间
  3. 工作经验越长越好(能力出众的在读研究生或ACM人员也可以考虑)
  4. 愿意分享平时工作中的项目经验或性能优化建议
  5. 热爱算法者优先。

符合以上条件的朋友欢迎加入编程艺术室。有意者,可随时联系我(zhoulei0907@yahoo.cn),以为大家创造更多的价值,更好的服务。谢谢。


版权所有,侵权必究。严禁用于任何商业用途,违者永久追究法律责任。

转载于:https://www.cnblogs.com/v-July-v/archive/2011/06/02/2316420.html

程序员编程艺术第一~十章集锦与总结(教你如何编程)--持续更新中相关推荐

  1. 程序员编程艺术第一 十章集锦与总结 教你如何编程 持续更新中

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 程序员编 ...

  2. 程序员编程艺术第一~十章集锦与总结

    程序员编程艺术第一~十章集锦与总结--面试.算法.编程 作者:July.编程艺术室. 出处:http://blog.csdn.net/v_JULY_v . 围绕"面试"." ...

  3. 推荐适合程序员听的歌,关键时候能救命(哈哈,持续更新...)

    更新 最近在听 不再犹豫 -beyond 错位时空 -艾晨 给你呀 -蒋小呢 四季予你 -程响 手心的蔷薇 -林俊杰/邓紫棋 飞鸟和蝉 -任然 是想你的声音啊 -傲七爷 归去来兮 -花粥 落霜 -花粥 ...

  4. 程序员编程艺术第一 二十二章集锦与总结(教你如何编程)

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 程序员编 ...

  5. 程序员编程艺术第一~二十二章集锦与总结(教你如何编程)

    程序员编程艺术第一~二十二章集锦与总结(教你如何编程) 作者:July.编程艺术室. 出处:http://blog.csdn.net/v_JULY_v . 题记 好久没更新博客了,虽只有一个月,但对我 ...

  6. 程序员编程艺术第一~三十八章集锦与总结,及Github地址、PDF下载

    程序员编程艺术第1~38章集锦与总结,及Github.PDF下载 前言 熟悉本blog的朋友大都知道,在2010年刚开始写本博客之际,我整理过一个微软面试100题,后来我为这100题开始发帖讨论,写答 ...

  7. 程序员编程艺术第一 三十八章集锦与总结,及Github地址 PDF下载

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 程序员编 ...

  8. 程序员编程艺术第一~二十七章集锦与总结(教你如何编程),及PDF免分下载

    程序员编程艺术第一~二十七章集锦与总结(教你如何编程) 作者:July.编程艺术室 出处:结构之法算法之道blog 一.引言 自从去年7月份朋友花明月黯帮我制作了十三个经典算法研究的PDF文档(最新的 ...

  9. redis深度历险 pdf_程序员面试必备精选文档:Redis+Ng+Tomcat+并发编程+Spring系列

    前言 相信好多程序员都想在金三银四的时候找到或者跳槽到自己心仪的大厂.但是,今年的错过了,学习的脚步是不能停下的,这样才会抓住每一次机会,希望大家都可以找到自己心仪的公司就业.当然,除了做项目来提高自 ...

最新文章

  1. centos7安装mongodb3.4
  2. 图像处理中的跨度(stride)
  3. idea控制台输出乱码
  4. Java BigDecimal初探
  5. 中国计算机类研究生学校排名,2018考研:计算机专业全球院校排名公布,上海交通大学竟排第一?...
  6. 遗传算法解决作业调度c语言,应用遗传算法解决车间作业调度问题
  7. 关于ISIC数据集如何下载的问题
  8. 使用Gpu恢复7z密码
  9. java字符串intern_String中intern方法的使用场景详解
  10. 推荐算法理论 :协同过滤
  11. PPT设计思维进阶:提升设计能力
  12. opencv之重映射remap
  13. linux 批量ping检测
  14. 矩阵分析(1)--一些基本概念
  15. 降噪算法如何评定效果?用标准的方法,科学合理的判定你的降噪算法效果。
  16. TH2830 TH2831 TH2832 TH283X系列紧凑型LCR数字电桥技术参数
  17. 这效果炸了,网易云音乐“宇宙尘埃”特效!
  18. STK11.6 基于C#的Plugin插件编程调试
  19. 项目人生,人生项目--王如龙语录
  20. jml java msn_JML 简单的MSN 机器人

热门文章

  1. NSLog (Log信息的输出)
  2. 详解ISA2006三种客户端
  3. w2k telnet port change
  4. android:persistent (非系统app失效)
  5. Linux中默认的JDK版本设置
  6. Java并发编程—定时器Timer底层原理
  7. 部署nodejs项目到服务器的一些总结
  8. flink RPC(akka)
  9. 【数据库】-基本特性
  10. WCF、WebAPI、WCFREST、WebService之间的区别