js难的是抽象概念
编程语言也能抽象
JS Python java PHP 根本就没区别
这些语言都有
- 声名
- if...else
- while 循环 for 循环
- 函数
- 对象
这意味着
- 你没有必要过分关注语言的细节
- 你首先理解这些语言的不变之处
- 以不变应万变
1,对编程的热爱---简洁之美
2,所有的编程逻辑,都在使用逻辑
- 三段论逻辑
- 命题1:js有7种数据类型:string,number,bool symbol undefined null object
- 命题2js函数不属于前六种类型
- 推论:js的函数属于object类型
命题1: js中所有函数都是由Function 构造的
命题2: Function,object,Arry 是函数
推论:Function ,object ,Array 是由 Function 构造的
逻辑VS 直觉
- 直觉的好处
- 直觉能让你快速学会一些东西
- 比如数字,字符串,数组,对象都可以靠直觉学会
- 直觉的坏处
- 直觉却又能阻止你学会另外一些东西
- 这时你就只能依靠逻辑来说服自己
- 比如虽然不知Function 是如何构造Function的,但逻辑告诉我们,确实如此
如何用代码表示逻辑
- 栗子
- 输出两个数中较大一个数
- 如果第1个数大于第二个数,就输出第1个数
- 代码
- a=[12,32]
- if a.age(0)>a.get(1)
- print a.get(0)
- else
- print a.get(1)
结论
用 if...else...可以表示逻辑---发现规律
栗子2
- 输出N个数中最大的一个数
- 找到第 1,2个数字中较大的那一个,存入max
- 找到max和第3个数字中较大的那个,存入max
- 找到max和第,,,个,存入max
- max 就是最大的属
![3679d237d2da9b7a5916ec142a4dd452.png](https://img-blog.csdnimg.cn/img_convert/3679d237d2da9b7a5916ec142a4dd452.png)
代码
- a =[12,32,9,1,23,6]
- max = a [0]
- for i from 1 to a.length() -1
- if a.get(i) max then max
结论
用for循环可以表示逻辑
只需要三种语句---[结构化编程] 理论*
但结构化编程在某些情况下回变得麻烦,比如错误处理
三种逻辑语句搞定所有编程逻辑
- 顺序执行语句
- 语句1
- 语句2
![dad7c377bddfe2b46598f764834d7d6a.png](https://img-blog.csdnimg.cn/img_convert/dad7c377bddfe2b46598f764834d7d6a.png)
- 条件判断语句
- if...then...else..
- if...eles if ...else
![57dc6f501d58fff5efb66bb36b53b62c.png](https://img-blog.csdnimg.cn/img_convert/57dc6f501d58fff5efb66bb36b53b62c.png)
- 循环语句
- while..do...
- for i from 1 to n ....
![751e6c12ba860e6b7e19d278996003f4.png](https://img-blog.csdnimg.cn/img_convert/751e6c12ba860e6b7e19d278996003f4.png)
流程图 , 伪代码的好处
- 锻炼你的大脑
- 你必须自己画出来
- 不能运行在计算机里
整理你的思路
- 思路乱,则图乱
- 伪代码都写不好,则代码更写不好
两个数字找到较大的一个的流程图
![e6e20ba81786a5f5fcef95aec057e611.png](https://img-blog.csdnimg.cn/img_convert/e6e20ba81786a5f5fcef95aec057e611.png)
n个数字找到较大一个的流程图
![66f0d47efe628051264d7f4dead7180c.png](https://img-blog.csdnimg.cn/img_convert/66f0d47efe628051264d7f4dead7180c.png)
总结
- 逻辑很重要
- 用三种语句表达逻辑
- 用图和伪代码表示三种语句
数据结构的作用
- 数据结构作用
- 提前记住一些结构
- 这些结构很常见
- 这些结构能让你很快理清思路
- 这些结构面试经常问
- 锻炼你得抽象能力
- 一种数据结构往往能解决很多类似问题
- 如果你选错了数据结构,你根本就不想出路
- 牛逼的程序员更重视数据结构而,不是算法
8种排序算法快速学会数据结构