基于javascript实现的一些常用算法

基于javascript实现的一些常用算法

JavaScript CSS相关

详细介绍

##基于JavaScript实现的常用算法。

|--排序算法

|--一般算法

   |--冒泡排序
   |--选择排序
   |--插入排序
   |--快速排序  
   |--归并排序  
   |--希尔排序  
   |--堆排序  

|--检索算法

|--顺序查找
|--二分查找

|--推荐算法

|--加密算法

|--压缩算法

|--渲染算法

|--其他算法

|--动态规划
|--戴克斯特拉
|--贝叶斯分类
|--贪心


##算法的五大特征:

  • 有穷性:
  • 确切性
  • 输入项
  • 输出项
  • 可行性

##算法的考量:

  • 时间复杂度
  • 空间复杂度
  • 正确性
  • 可读性
  • 健壮性

##程序员内功:
###编程通用性的知识
算法
编译原理
数据结构
设计模式
重构
性能优化
面向对象编程
数据库
抽象化

###语言内部的共性
字符串处理
正则表达式
变量与常量
控制语句if-else
循环
函数/方法
类/对象/接口
递归
哈希表
数组

###还有工具类的内功:
构建工具 (通用知识)
单元测试 (通用知识)
依赖包管理 (通用知识)
MVC 框架 (通用知识)
代码质量检测 (通用知识)
JSON 和 XML 设计 (通用知识)
代码控制 (通用知识)

###IT外的相关知识:
数学(离散数学,几何学)
物理
图形处理
图形/UI设计

##程序员招式:

各种编程语言包括C++,javascript,java,php,C#,perl,python等
各种编程环境,.NET, WAMP/LAMP,node.js 等
各种IDE和编辑器,notepad++,vim,Visual Studio,Sublime等
各种快捷键,
各种包依赖管理器,npm,composer,Nuget
各种版本管理器:git,svn,cvs
各种单元测试工具
各种构建工具
各种MVC框架

作者:caoglish
链接:https://www.zhihu.com/question/22471978/answer/21468471
来源:知乎