① 算法与程序有何区别
01 算法是为一个问题或一类问题给出的解决方法与具体步骤,是对问题求解过程的一种准确而完整的逻辑描述。程序则是为了用计算机解题或控制某一过程而编排的一系列指令的集合。程序不等于算法。但是,通过程序设计可以在计算机上实现算法。
你可能解答过一个有趣的问题——“人、狼、羊过河”问题。有个人带着三只狼、三只羊,要过河去。有一条小船。船上除了运载一个人外,至多再载狼或羊中的任意两只。但难点是:当人不在场时,如果狼的数量大于等于羊的数量,那么羊会被狼吃掉。为了安全过河,你有什么办法呢?
解决它的算法有多个,其中一个解决方案是这样的:
开始,运一只狼过河,空船回来;
接着,运一只狼和一只羊再过河,到对岸后,再运两只狼回来;
然后,运两只羊过河,空船回来;
最后,分两次将狼全部运过河;
由此,过河问题就得以解决了。
可见,算法是为一个问题或一类问题给出的解决方法与具体步骤,是对问题求解过程的一种准确而完整的逻辑描述。它由有限步骤的操作序列组成,代表着用系统的方法描述解决问题的策略机制。
算法是一组严谨定义运算顺序的规则,每一个规则都是有效的、明确的,此顺序必须在有限的次数下终止。在上面的过河问题中,如果第一步中改为:“运一只狼过河,再运这只狼回来”,那么,说明人没找到好办法,在反复进行无用操作。此类算法,是失败的,永远也实现不了既定目标。
算法描述,一般可以使用汉、英等自然语言,比较通俗易懂。也可以使用流程图、伪代码表格等其他工具。
在古代,算法通常用于数值计算。中国古代的筹算口诀、珠算口诀及其执行规则就是算法的雏形。它所解决的是数值计算问题。现代算法,已超出数值计算范围。
程序则是为了用计算机解题或控制某一过程而编排的一系列指令的集合。这些指令,可以是计算机的机器指令,也可以是汇编语言和高级程序设计语言。
程序不等于算法。但是,通过程序设计可以在计算机上实现算法。在实际应用中,也许只需一条(组)程序设计语句,就可以完成算法的基本要素处理,包括数据对象的运算和操作,以及顺序、选择、循环结构的控制。通过程序模块设计,可以实现算法中的递推、递归、迭代等一系列基本算法,也包括形式演绎、数据结构、数论图论、加密解密、科学决策等复杂算法。
因此,运用计算机解决问题的过程,通常可以分成三个阶段:分析问题、设计算法和编制程序实现算法。由于计算机运算速度快,存储数据量大,大大提高了算法实现效率。
② 编写程序很难吗
很难,尤其是对中国人
精通一门编程语言需要10-20年,而很多的编程语言本身设计的局限性比较大,或者过于复杂,导致学编程的人根本没法完全的掌握。
编程的难点,
1 英文字母,这个很致命,因为我们看中文是从小看,可以做到一目十行,但是看英文,我们的阅读水平明显下降。这样很影响我们对于代码的理解和编程速度。
2 标点符号的过分使用,英语对于标点的热爱远超中文,导致我们在编程中不得不频繁的切换。
3 思维逻辑的西方化,编程语言都是西方人设计的,所以思维逻辑上符合西方人的理解方式
中国人的思维逻辑和他们完全不同
4 编程语言普遍太老,目前的最流行的几十种编程语言的出生时间,最年轻的GO(谷歌的)也有10年了,设计思想,语言习惯等等,都有明显的时代特征,很多的设计理念,思想,语法结构都显得多余。
综上,编程语言本身的问题太多,导致了中国人学习起来困难。
③ 编程C/C++与数据结构哪个更难,C/C++与算法哪个更难
帮你理一理:
1. C/C++是编程语言。
2. 数据结构是计算机存储、组织数据的方式。
3. 算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。
三者是递进关系,语言和数据结构是基础,从编程的角度说,算法就是利用编程语言组织的数据结构,加上处理逻辑,来解决现实中的各种问题,所以并没有可比性。从学习的角度讲,肯定是月到后面越难的。
祝学习顺利!
④ 算法与程序设计和数据管理技术哪个难一些
本人.NET程序员.感觉算法和数据管理要难一些,也比较有学头.我们最早学的是老严(严蔚敏)的数据结构,这本书非常好,建议楼主要走这条道的时候好好研读一下,对写程序有很大的帮助.
⑤ 算法设计与编程哪个更难
算法设计一般比较难 编程主要是你日积月累的习惯
算法需要根据实际的情况进行 设计
⑥ 会考信息技术考试,网络技术和算法和程序那个更简单些。
因为同一个学校内学的都是一种的
老师就那么抄几个
要教那么多教不过来的
不同学校学的不同
不过
算法程序笔试相对较难
有编程那些的
不过上机要简单
网络技术相反
当然
前提是你会、
主要还是看你那种会的更多些
分数能考的更高些
⑦ 算法程序难么
算法是程序的一部分,算法是所有程序的精髓,这个说真的是挺难的!
⑧ 学编程,什么叫算法 为什么很多人说算法很难
其实说白了,算法就是解决某种问题的方式,但也分好的算法和差的算法,而学习书本上的知识目的就是为了提升自己的思维方式,借鉴更多好的算法,因为好的算法可以提升程序的性能,提高开发效率,就拿最简单的例子,玩猜数字游戏,1-100里面随便选一个数字,然后让你去猜它是多少,别人会告诉你这个数字大了还是小了,最直接的方式就是从1一直猜到100,但是也有更简便的方式:就是类似二分法的方式从50开始猜,如果大了就猜1-50中的25,如果小了猜50-100中的75,以此类推,第一种从1-100猜数字是算法,第二种二分法的方式也是算法,只是第二种更好.........还有从1加到100,直接方式1+2+3....一个一个的加,另一种方式(1+100)*50,这个就是着名的高斯算法。
⑨ 请问软考软件设计师考试最难的是程序语言课,数据结构课,算法课这三课吗
程序语言最难
⑩ 算法设计和编码之间的区别是什么哪种更难
算法设计更难,编码只是根据算法的伪代码去实现算法。需要一些写代码的功底。
算法设计更注重的是想法。基本上算法设计出来了,写程序就不难了。
算法设计的工资比编码的工资高得多,一个高中生就能编码了。
在印度,程序员基本上是高中生。而中国的计算机本科生出来基本上做了程序员。