猫史档案馆


【算法】【一】简单的算法和数据结构教程

用户:查看:20 回复:25 评论:20 创建时间:2016-09-19T20:45:16



开始前,先放一个漫画……

“不学数学也能活得很好”可能也是一部分训练师的心态。

但是想要进一步学好编程,“算法”是一定要好好学的。

很多编程猫的训练师都已经完成基本的编程学习了,今天起,我会定期在百科上发帖教大家一些简单的算法和数据结构知识,也会在“图书馆”里直接更新。


*********************************


我们先说最简单的一个例子,数学家高斯的故事。

高斯在小时候,曾经被老师罚,让他算出1+2+3+4+……+99+100的和。

各位训练师你们如果用计算机来做,会怎么做呢?

可以这样来做:

方案一:直接让1加到100

设定一个变量“数字”,一个变量“和”,

然后执行100次:

和=和+数字;(这里左边的和会变成新的结果,后面一个和是原来的总和。)

数字=数字+1;

像这样:


你们可以试试看~


这个计算机做当然不会慢,但是人做起来就很傻了,因为我们的数学家高斯已经想到了更好的方案:

方案二

   和    =    1  +   2 +  3  +  4  +……+ 99 +100

   和    = 100 + 99 + 98 + 97 +……+  2  + 1   

(把上下两列相加,得到:)

和+和=  101+101+101+101+ …… +101 + 101

和+和= 100个101相加

和 X 2 =  101 X 100

所以,和=101✖️ 100 ➗  2


这样,高斯可以一下子就得到了答案。


方案一的算法虽然很好理解,但是执行次数多,也就意味着:

方案一的算法复杂度高(算法复杂度具体怎么衡量,后面我们会讲)


利用方案二的这个算法,我做了一个可以求1+2+3一直加到任意一个数字的和的程序:

https://idebeta.codemao.cn/w/97206?type=iframe

大家可以试着做出来看看!


算法是非常有意思的,这一次从简单的部分讲起,慢慢讲到排序,二叉树,图的遍历,散列表等等,数据结构上我们也会从数组和链表,讲到栈,队列,树和图。

大家有什么问题,直接在这个帖子上回复我吧!


回复

上一页1 页 / 共 1下一页

hhh

点赞0


评论


884158987884158987

不错不错。不过我怎么记得高斯不是被罚的呀,好像是他们老师出了这么个题目让大家算,他最先解出来的吧?

还有楼主的 ÷ 变成 □ 了



点赞0


评论


DuxtrDuxtr

恩,这个类似快速幂的算法真的很精彩!

点赞0


评论


快乐的小璇儿快乐的小璇儿

6666

点赞0


评论


DuxtrDuxtr

我猜测你的算法大概是:

(1+所输入的数)*所输入的数/2

求合作,我主持的逻辑大挑战就是考验参加者对算法的编纂,希望能够从你这里吸收更多的算法

点赞0


评论


Dio丶BrandoDio丶Brando

666


点赞0


评论


Dio丶BrandoDio丶Brando

@Duxtr 你不是有什么问题考大家的帖子吗?


点赞0


评论


猫老祖猫老祖

大家多多学习多多分享哦


点赞0


评论


可执行程序.exe可执行程序.exe



点赞0


评论


@Duxtr  支持你


点赞0


评论


@可执行程序.exe  


点赞0


评论


无虑的金冠泥777无虑的金冠泥777

学习了


点赞0


评论


数学数学

非常棒!期待多分享

点赞0


评论


good  nightgood night

这不是《幻想数学大战》第一册的内容吗

那个男孩知修因为背不出小九九被罚站

编程猫是美娜吧   来寻找救亚特兰蒂斯的救世主的

点赞0


评论


离开的十五分之六老咸鱼离开的十五分之六老咸鱼

2333

点赞0


评论


离开的十五分之六老咸鱼离开的十五分之六老咸鱼

后来根据高斯的算法,人们推出了等差数列求和公式:

(首项+末项)*项数/2

点赞0


评论


嗯哼君 渠源嗯哼君 渠源

这好似是初一数学吧。

还有都2016年的帖子了你们哪来的洛阳产啊啊啊?

点赞0


评论


无情的AC自动鸡无情的AC自动鸡

蒟蒻博客max.xsyds.cn

点赞0


评论


WepnWepn

emotion_编程猫_厉害了

点赞0


评论


机器人包老师机器人包老师

 

点赞0


评论


猫悟淡猫悟淡

再来一个洛阳铲!

点赞0


评论


爵士OIer爵士OIer

二叉树和散列表:它们是数据结构emotion_dogeemotion_喵喵

点赞0


评论


游侠已退游侠已退

挖不动了

点赞0


评论


治愈绾兮治愈绾兮

挖坟

点赞0


评论


我是菜鸟啊我是菜鸟啊

挖坟

点赞0


评论