有算法
1. 程序中一定会有算法么
不一定,算法和程序还是有区别的,算法一般是针对某个数学问题。简单的常见算法主要有查找、排序。复杂一些的算法比如有加密、搜索引擎、3D渲染等等。
程序和算法最显着的区别是,算法一定可以在有限的时间内结束,而程序则不必。比如QQ,你只要不关闭它,就可以让它一直运行下去,这就是程序。而搜索引擎,你点一下搜索,它会很快给出搜索的结果,这就是算法。
至于Hello World嘛……太简单了,无所谓算法……
补充回答:
算法存在的意义是解决某个特定问题的,否则就没有意义了。只要你的这种组合符合算法的定义和特征的,那么没有争议,就是算法。Google的搜索引擎算法不知道有多复杂,据说有上万个参数,但那也是算法。
其实楼主大可不必纠结于概念,大师们之所以把“算法”这个概念抽象出来,是为了更好的解决一些常见的计算问题,当然由此也衍生出了算法复杂度等一系列概念。只要能够更好的解决问题,概念是次要的,结果才是主要的。
2. 澶ф暟鎹链夊摢浜涚畻娉
澶ф暟鎹镄勭畻娉曞寘𨰾锛
涓銆佹暟鎹鎸栨帢绠楁硶
1. 鍒嗙被绠楁硶
鍒嗙被绠楁硶鏄澶ф暟鎹涓甯哥敤镄勬暟鎹鎸栨帢绠楁硶涔嬩竴锛岀敤浜庨勬祴鏁版嵁镓灞炵殑绫诲埆銆傚父瑙佺殑鍒嗙被绠楁硶鍖呮嫭鍐崇瓥镙戝垎绫汇佹湸绱犺礉鍙舵柉鍒嗙被銆佹敮鎸佸悜閲忔満绛夈傝繖浜涚畻娉曢氲繃瀵瑰凡鐭ユ暟鎹闆嗙殑鐗瑰緛杩涜屽垎鏋愶纴寤虹珛鍒嗙被妯″瀷锛屼粠钥屽规湭鐭ユ暟鎹杩涜岄勬祴鍜屽垎绫汇
2. 镵氱被绠楁硶
镵氱被绠楁硶鏄灏嗗ぇ鏁版嵁闆嗕腑镄勬暟鎹鍒掑垎涓轰笉钖岀殑缇ょ粍鎴栫皣锛屼娇寰楀悓涓绨囦腑镄勬暟鎹鐩镐技搴﹁缉楂桡纴涓嶅悓绨囦箣闂寸殑鏁版嵁鐩镐技搴﹁缉浣庛傚父瑙佺殑镵氱被绠楁硶鍖呮嫭K鍧囧艰仛绫汇佸眰娆¤仛绫荤瓑銆傝繖浜涚畻娉曞箍娉涘簲鐢ㄤ簬甯傚満缁嗗垎銆佺ぞ浜ょ绣缁滃垎鏋愮瓑棰嗗烟銆
浜屻佹満鍣ㄥ︿範绠楁硶
1. 锲炲綊绠楁硶
锲炲綊绠楁硶鐢ㄤ簬棰勬祴鏁板煎瀷鏁版嵁銆傚畠阃氲繃鍒嗘瀽杈揿叆涓庤緭鍑哄彉閲忎箣闂寸殑鍏崇郴锛屽缓绔嬫暟瀛︽ā鍨嬶纴铹跺悗鍒╃敤杩欎釜妯″瀷杩涜岄勬祴銆傚湪澶ф暟鎹鍒嗘瀽涓锛屽洖褰掔畻娉曡骞挎硾搴旂敤浜庨勬祴鍒嗘瀽銆佸竞鍦洪勬祴绛夐嗗烟銆
2. 娣卞害瀛︿範绠楁硶
娣卞害瀛︿範绠楁硶鏄链哄櫒瀛︿範镄勪竴涓鍒嗘敮锛岄氲繃妯℃嫙浜鸿剳绁炵粡缃戠粶镄勭粨鏋勶纴寤虹珛澶氩眰绁炵粡缃戠粶妯″瀷锛岃嚜锷ㄦ彁鍙栨暟鎹镄勭壒寰佸苟杩涜屽垎绫绘垨棰勬祴銆傚湪澶ф暟鎹澶勭悊涓锛屾繁搴﹀︿範绠楁硶琚骞挎硾搴旂敤浜庡浘镀忚瘑鍒銆佽阔宠瘑鍒銆佽嚜铹惰瑷澶勭悊绛夐嗗烟銆
涓夈佹帹钻愮郴缁熺畻娉
鎺ㄨ崘绯荤粺绠楁硶鏄鐢ㄤ簬鍦ㄥぇ鏁版嵁涓镓惧嚭鐢ㄦ埛鍙鑳芥劅鍏磋叮镄勭墿鍝佹垨鍐呭癸纴骞舵帹钻愮粰鐢ㄦ埛镄勭畻娉曘傚父瑙佺殑鎺ㄨ崘绯荤粺绠楁硶鍖呮嫭鍗忓悓杩囨护銆佸熀浜庡唴瀹圭殑鎺ㄨ崘绛夈傝繖浜涚畻娉曢氲繃鍒嗘瀽鐢ㄦ埛镄勮屼负鏁版嵁銆佸叴瓒e亸濂界瓑淇℃伅锛屼负鐢ㄦ埛鎻愪緵涓镐у寲镄勬帹钻愭湇锷°
浠ヤ笂鏄澶ф暟鎹涓甯哥敤镄勫嚑绉岖畻娉曪纴瀹冧滑鍦ㄤ笉钖岀殑棰嗗烟鍜屽満鏅涓鍙戞尌镌閲嶈佷綔鐢锛屽府锷╀汉浠镟存湁鏁埚湴澶勭悊鍜屽垎鏋愬ぇ鏁版嵁銆
3. 什么叫算法算法有哪几种表示方法
算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。计算机科学家往往将“算法”一词的含义限定为此类“符号算法”。“算法”概念的初步定义:一个算法是解决一个问题的进程。而并不需要每次都发明一个解决方案。
已知的算法有很多,例如“分治法”、“枚举测试法”、“贪心算法”、“随机算法”等。
(3)有算法扩展阅读
算法中的“分治法”
“分治法”是把一个复杂的问题拆分成两个较为简单的子问题,进而两个子问题又可以分别拆分成另外两个更简单的子问题,以此类推。问题不断被层层拆解。然后,子问题的解被逐层整合,构成了原问题的解。
高德纳曾用过一个邮局分发信件的例子对“分治法”进行了解释:信件根据不同城市区域被分进不同的袋子里;每个邮递员负责投递一个区域的信件,对应每栋楼,将自己负责的信件分装进更小的袋子;每个大楼管理员再将小袋子里的信件分发给对应的公寓。