C语言经典算法
文章平均质量分 71
莫影老师
莫影老师
展开
-
龙生龙,凤生凤,老鼠儿子,会打洞,C语言经典算法之老鼠走迷宫
老鼠走迷官老鼠走迷宫是递回求解的基本题型,我们在二维阵列中使用2表示迷宫墙壁,使用1来表示老鼠的行走路径,试以程式求出由入口至出口的路径。解析老鼠的走法有上、左、下、右四个方向,在每前进一格之后就选一个方向前进,无法前进时退回选择下一个可前进方向,如此在阵列中依序测试四个方向,直到走到出口为止,这是递回的基本。数据成员绘制迷宫访问处理主函数...原创 2019-03-29 22:42:58 · 318 阅读 · 0 评论 -
二十个一乘以二十个二等于多少?C语言经典算法设计之大数乘法
前言本文介绍一种大数的乘法,也就是说,无论得到或者传入的数有多大,它总能计算出正确的结果。大数乘法由于乘法可以互换所以对于输入的数字没有限制条件,计算方法还是模仿手工算法,由被乘数的低位开始和乘数的每一位相乘并且要将大于9的十位数向前进一位,存在3个问题需要我们解决。主要问题我们要用多大的数组存储结果? 要使用嵌套循环吗? 如何在计算的过程中保证进位?解决方案二个...原创 2019-03-30 21:05:12 · 510 阅读 · 0 评论 -
预言世界末日来临的算法,C语言经典算法之河内之塔
河内之塔说明河内之塔(Towers of Hanoi)是法国人M.Claus(Lucas)于1883年从泰国带至法国的,河内为越战时北越的首都,即现在的胡志明市;1883年法国数学家 Edouard Lucas曾提及这个故事,据说创世纪时Benares有一座波罗教塔,是由三支钻石棒(Pag)所支撑,开始时神在第一根棒上放置64个由上至下依由小至大排列的金盘(Disc),并命令僧侣将所...原创 2019-03-27 16:27:15 · 546 阅读 · 0 评论 -
兔子会生,你会数吗?C语言经典算法之费式数列,一个数兔子算法
Algorithm Gossip: 费式数列Fibonacci为1200年代的欧洲数学家,在他的着作中曾经提到:「若有一只免子每个月生一只小免子,一个月后小免子也开始生产。起初只有一只免子,一个月后就有两只免子,二个月后有三只免子,三个月后有五只免子(小免子投入生产)......。如果不太理解这个例子的话,举个图就知道了,注意新生的小免子需一个月成长期才会投入生产,类似的道理...原创 2019-03-27 16:29:08 · 555 阅读 · 0 评论 -
流传千年的三角形玩不?帕斯卡三角形,C语言经典算法之杨辉三角
巴斯卡三角形行文不易,新手上路,多多关注,这真的对我很重要,私信更有惊喜巴斯卡三角形亦是杨辉三角,是 二项式系数 在三角形中的一种几何排列,在中国南宋数学家 杨辉 1261年所著的《 详解九章算法 》一书中出现。在欧洲, 帕斯卡 (1623----1662)在1654年发现这一 规律 ,所以这个表又叫做 帕斯卡三角形 。帕斯卡的发现比 杨辉 要迟393年,比 贾宪 迟600年。概述...原创 2019-03-27 20:17:01 · 1026 阅读 · 2 评论 -
极少数人用过的另类素数求解法,C语言经典算法之筛选法求质数
筛选求质数明除了自身之外,无法被其它整数整除的数称之为质数,要求质数很简单,但如何快速的求出质数则一直是程式设计人员与数学家努力的课题,在这边介绍一个着名的 Eratosthenes求质数方法。首先知道这个问题可以使用回圈来求解,将一个指定的数除以所有小于它的数,若可以整除就不是质数,然而如何减少回圈的检查次数?如何求出小于N的所有质数?首先假设要检查的数是N好了,则事实上只要检查至N...原创 2019-03-28 15:53:55 · 595 阅读 · 0 评论 -
媳妇多就用分支修剪,解决婆娘纷争,C语言经典算法之八皇后问题
八皇后问题西洋棋中的皇后可以直线前进,吃掉遇到的所有棋子,如果棋盘上有八个皇后,则这八个皇后如何相安无事的放置在棋盘上,1970年与1971年, E.W.Dijkstra与N.Wirth曾经用这个问题来讲解程式设计之技巧。分支修剪解法关于棋盘的问题,都可以用递回求解,然而如何减少递回的次数?在八个皇后的问题中,不必要所有的格子都检查过,例如若某列检查过,该该列的其它格子就不用...原创 2019-03-28 16:48:06 · 182 阅读 · 0 评论