算法精解概述

欢迎访问我的新博客:http://www.milkcu.com/blog/

原文地址:http://www.milkcu.com/blog/archives/introduction-to-mastering-algorithms-with-c.html

原创:算法精解概述

作者:MilkCu

摘要:本文对《算法精解》做了简单描述,对其中的约束和核心思想简单介绍了一下。

引言

《算法概述》是一本比较基础的讲解算法和数据结构的书,英文名Mastering Algorithms with C。对于每种数据结构和算法,里面都有完整的C语言实现,并没有单纯讲解算法书籍的空洞感。这本书的英文版是在2001年上市的,中文版2013年才上市,翻译步伐有点缓慢。虽然是本老书,C语言也是一种古老的语言,但依然散发着经典的光芒。里面的程序使用纯C语言编写,当然有些可以使用C++的STL简单的实现。这是一本好书,但是中文​翻译水平一般,特别是对“引用”滥用很严重。

约定

  • 所有void函数都显式包括return语句
    尽管这不是必须的,但这有助于快速定位函数的返回位置,而不必费力的去匹配大括号。

  • lg x
    这种记法表示以2为底数,x的对数,正式写法为log2 x。这种记法在有关算法的讨论中很常见,因此本书也采用这种记法。

数据结构和算法简介

使用数据结构和算法的三个原因是:效率、抽象和重用性。

在C语言里,通过使用指向void类型的指针来管理任意类型的数据,而不是在数据结构内部维护一份数据的私有副本。

算法设计的一般方法

随机法

分治法

动态规划

贪心法

近似法

软件工程的思想

模块化

可读性

简洁性

一致性

(全文完)

本文地址:http://www.milkcu.com/blog/archives/introduction-to-mastering-algorithms-with-c.html

你可能感兴趣的:(算法)