什么是编程?
1,判断一件事情能否用计算机解决
2,然后用计算机解决它(大部分人只学这个)
一般来说新人搞不定第一件事,由于缺乏对「计算机能做什么」的整体了解,所以并不清楚什么时候不能用计算机解决。
看书看不下去
1,换一本看得懂的
2,换文字教程、视频教程
3,有些书是既能让你看懂,又能讲清楚原理——比如《编码》
大部分事情都是「先干,再了解」的
你不知道 var a = 10 的 10 存在哪里,但这不影响你写出一个网页。
等你写一段时间代码,自然就会自己去学习背后的知识。
「做出东西(Get Things Done)」很重要。
伪代码和流程图
伪代码
伪代码的好处:让你聚焦于思路,而不是细节。
1,顺序执行每一行代码
2,循环
3,if else 判断
实例:
已知有正整数数组 numbers,请将 numbers 中最小的数字找出来.
第一个想法:人类会怎么做?
逐个看数组里的数字
认为第一个数字是最小的
一旦发现新的数字比这个数字还小,就认为新的数字的最小的
第二个想法:计算机可以做吗?
numbers = [233,1,100,23,53,42,244,88,1, 2,9]
min = numbers.get(1)
index = 1
while(index <= numbers.length)
if numbers.get(index) < min
min = numbers.get(index)
end
index = index + 1
end
return min
流程图:
排序算法
已知有正整数数组 numbers,请将 numbers 中的数字从小到大排列。
代码:
numbers = [233,1,100,23,53,42,244,88,1, 2,9]
第几次循环 = 1
指向第几个 = 1
while 第几次循环 <= numbers.length
while 指向第几个<=numbers.length - 第几次循环
if numbers.get(指向第几个) > numbers.get(指向第几个 + 1)
temp=numbers.get(指向第几个)
numbers.get(指向第几个) = numbers.get(指向第几个+1)
numbers.get(指向第几个+1) = temp
end
指向第几个 + 1
end
第几次循环 + 1
end
return numbers
流程图:
网友评论