07 2013 档案
命令式语言和声明式语言对比——JavaScript实现快速排序为例
摘要:什么是命令式编程 (Imperative Programming)?命令机器如何做事情,强调细节实现java、c、c++等都属此类。“这些语言的特征在于,写出的代码除了表现出“什么(What)”是你想做的事情之外,更多的代码则表现出实现的细节,也就是“如何(How)”完成工作。这部分代码有时候多到掩盖了我们原来问题的解决方案。比如,你会在代码里写for循环,if语句,a等于b,i加一等等,这体现出机器如何处理数据。”什么是声明式编程(Declarative Programming)?声明式编程告诉机器做什么,至于怎么做到的,你可以不用管。代表语言:prolog 特点:你只需向它提供一些事实(.
阅读全文
merge sort 的javascript实现
摘要:递归上一篇blog里,用js实现了quicksort算法,quicksort算法是一个递归调用过程。递归是一种非常强大的编程思想,它广泛的的存在于各种语言当中,尤其lisp的各种方言中,大量的使用递归来实现循环操作。还有一本小书叫《The litter schemer》,就是让编程的人递归的思考问题(thinking recursively)。本篇呈接上篇,是对递归思想的实践——在学习常见的算法的同时,运用递归思想。理解了递归思想,以前觉得挺难的算法也觉得不是想象的那么难了。mergsort in javascript最简单的情况是对两个元素的数组排序;如果两个数组已经排序好了,那么,再将这两
阅读全文
浙公网安备 33010602011771号