`
东风玖哥
  • 浏览: 4451 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

算法改变世界——《算法之美——隐匿在数据结构背后的原理(C++版)》 读后感

阅读更多

 所谓算法,就是隐匿在数据结构后背后的原理,在开发中好的算法可以降低时间复杂度提升可复用性。《算法之美——隐匿在数据结构背后的原理(C++版)》一书围绕算法与数据结构这个话题,用汉诺塔问题和八皇后问题等22个经典算法问题循序渐进、深入浅出地介绍了现代计算机技术中常用的45个经典算法。读后让人醍醐灌顶,茅塞顿开,并感觉相见恨晚。

 

 这本书的第六章《递归——老和尚讲故事》写的很好,首先介绍了递归的概念,然后用汉诺塔问题,传染病问题和八皇后问题分别阐述并实践了递归的两种思想——分治和回溯。

 

 我是一个不会用NDK的Android工程师,C++的水平见笑大方,但是算法的思想是想通的,我读了左老师对递归的见解后感觉醍醐灌顶,当头棒喝,马上写了一个遍历整个界面并取消所有RadioButton点击事件的方法:

 

private void banClickable(ViewGroup radioGroup){
  for (int i = 0;i<radioGroup.getChildCount();i++){
    View v = radioGroup.getChildAt(i);
    if ( v instanceof RadioButton){
     v.setEnabled(false);
    }
    if ( v instanceof ViewGroup){
     banClickable((ViewGroup) v);
    }
   }
 }

 

 在这个一共15个RadioButton的界面里分别去掉每一个的点击事件只需要一分钟,写这个方法需要十分钟。但是如果RadioButton足够多,《算法之美——隐匿在数据结构背后的原理(C++版)》教我的递归算法之于笨方法的效率不亚于雕版印刷术之于手抄的效率,而且能大大减少代码量,增加可维护性。

 

我还有一本算法书《编程之美》,这两本书都有大量算法案例。不同点在于《编程之美》侧重于C的特性和在白板上手写伪代码(面试算法),而《算法之美》则详细收录了大量可以被改写成Java的C++例题来提升读者实际工作中的编程能力。

0
4
分享到:
评论

相关推荐

    数据结构、算法与应用——C++语言描述.rar

    《数据结构、算法与应用——C++语言描述》是一本深入探讨计算机科学核心领域的经典教材。数据结构和算法是编程的基础,它们对于理解和优化程序性能至关重要。本书通过C++语言来阐述这些概念,使得读者能够更好地掌握...

    数据结构与算法——C++版

    学习《数据结构与算法——C++版》这本书,不仅可以深入理解数据结构和算法的原理,还能掌握如何在C++环境中高效地实现它们,这对于提升编程技能和解决实际问题具有重要意义。通过阅读书中的例子和练习,你可以更好地...

    数据结构与算法C++版第二版书中源代码

    本资源包含的是《数据结构与算法C++版第二版》一书中的源代码,涉及到了线性表、链表、双链表、堆以及栈等多种基本数据结构的实现。 1. **线性表**:线性表是最基础的数据结构之一,它是一组有序的数据元素序列。在...

    《C++语言描述——数据结构算法与应用》

    《C++语言描述——数据结构算法与应用》是一本深入探讨C++编程语言在数据结构和算法应用方面的专业书籍。本书旨在帮助读者理解和掌握如何利用C++高效地实现各种数据结构和算法,从而提升编程技能和解决问题的能力。...

    数据结构与算法分析C++语言描述第四版参考答案

    《数据结构与算法分析C++语言描述第四版》是一本深度探讨数据结构和算法的经典教材。这本书由Mark Allen Weiss撰写,旨在帮助读者理解和掌握如何在C++编程环境中有效地设计和实现数据结构及算法。第四版更新了内容,...

    590412 数据结构、算法与应用 C++语言描述 原书第2版——高清扫遍版带书签

    《数据结构、算法与应用——C++语言描述》原书第二版是一本深入探讨计算机科学核心领域的经典教材,尤其适合那些希望通过C++语言提升自己在数据结构和算法方面能力的读者。这本书以其高清扫描版和精心设计的书签,为...

    《数据结构——C++实现》(第二版)课本源代码

    《数据结构——C++实现》(第二版)是一本经典的计算机科学教材,专注于介绍各种数据结构及其在C++编程语言中的实现。这本书的核心是通过实际的代码示例帮助读者理解和掌握数据结构的基本概念,这对于任何想要深入...

    数据结构与算法——C++版.rar

    本资料包"数据结构与算法——C++版"显然是一个针对C++程序员深入学习数据结构和算法的资源。 首先,数据结构是组织和存储数据的方式,它直接影响到数据的处理效率。常见的数据结构包括数组、链表、栈、队列、树(如...

    数据结构与算法分析——C++描述(第3版)

    《数据结构与算法分析——C++描述(第3版)》是计算机科学领域经典的一本教材,由Mark Allen Weiss著,主要针对数据结构和算法进行了深入的探讨,并使用C++语言进行实现。这本书旨在帮助读者理解和掌握如何有效地设计...

    数据结构算法与应用——C++语言描述,Sahni著,第二版,英文版,1/2,网上也找不到的资料

    数据结构算法与应用——C++语言描述,Sahni著,第二版,英文版,网上也找不到的资料。 第一部分。1/2 是扫描版,这是能找到的唯一的原版英文版本!

    数据结构算法——Visual_C++6.0程序集3

    根据给定的文件标题“数据结构算法——Visual_C++6.0程序集3”和描述,我们可以深入探讨数据结构与算法在Visual C++6.0环境下的应用与实践。数据结构是计算机科学中的一个核心概念,它涉及到如何组织、管理和存储...

    算法导论——所有算法和数据结构的C++实现

    所有代码都是在我学习这本书时亲手敲出来的,并且调试正确了,包括:第三部分到第六部分(即10-26章),外加第七部分31和32章所有的算法和数据结构以及编程习题还有思考题的C++实现源代码; 第一、二部分学习的较早...

    数据结构算法——Visual C++6.0程序集

    总的来说,“数据结构算法——Visual C++6.0程序集”教程旨在帮助读者掌握C++编程语言的同时,深入理解数据结构和算法的原理及应用。通过实践这些示例,你可以提高自己的编程技巧,为未来在软件开发领域的工作打下...

    数据结构与算法分析———C++语言描(程序)

    在这个“数据结构与算法分析——C++语言描(程序)”的压缩包中,我们很可能会找到一系列的实例程序,用于帮助学习者深入理解各种数据结构和算法。 1. **数组**:数组是最基本的数据结构,用于存储固定大小的同类型...

    算法与数据结构——c语言版+张乃孝

    《算法与数据结构——C语言版》是计算机科学领域中一本经典的教材,由张乃孝编著。这本书深入浅出地介绍了算法和数据结构的基本概念、设计方法以及它们在实际编程中的应用。C语言作为底层且高效的语言,是学习算法和...

    数据结构与算法设计分析-动态规划从菜鸟到老鸟

    数据结构与算法设计分析——动态规划从菜鸟到老鸟数据结构与算法设计分析——动态规划从菜鸟到老鸟数据结构与算法设计分析——动态规划从菜鸟到老鸟数据结构与算法设计分析——动态规划从菜鸟到老鸟数据结构与算法...

    《数据结构算法——Visual C++ 6.0程序集》电子教案

    《数据结构算法——Visual C++ 6.0程序集》电子教案是一份全面介绍数据结构与算法,并结合Visual C++ 6.0编程环境的教学资源。这份教案旨在帮助学习者深入理解数据结构的基础理论,掌握如何在实际编程中应用各种算法...

    (源码)数据结构与算法分析C++描述第三版中文

    《数据结构与算法分析——C++描述》是计算机科学领域一本经典的教材,主要涵盖了数据结构和算法的基础理论及其在C++编程语言中的实现。这本书的第三版提供了更现代的编程范式,包括模板和STL(Standard Template ...

    数据结构、算法与应用——C++ 语言描述

    ### 数据结构、算法与应用——C++ 语言描述 #### 关键知识点概览: 1. **数据结构与算法的重要性**:高效的数据表示和优秀的算法设计是解决现实问题的关键。 2. **C++ 基础技能**:熟练掌握C++编程及程序分析,...

Global site tag (gtag.js) - Google Analytics