算法的作用。。。

gaocy1 2011-06-05 02:12:12
小弟不才,会点编程语言。一直听人说算法、数据结构很重要,但是我怎们感觉自己一直没有用到这些,想学来着但是现在没有要学的理由,希望前辈们,说道说道。。。
...全文
356 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
jishiguang 2011-06-06
  • 打赏
  • 举报
回复
那要看你做什么,如果没有大量的数据要处理,只是一些判断就行,那么,算法也就没什么用,或者说根本用不上,
如果是初学,算法先放一边吧,主要要学习编程逻辑
jq_whh 2011-06-06
  • 打赏
  • 举报
回复
算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题。

我们在工程技术的,学习算法的目的是如何解决问题,解决问题的可行性有效性,以及解决方法的高效性(如减少代码,提高执行速度),等等...

所以从你开始学编程的那一天开始,你就在跟算法打交道。
郗晓勇 2011-06-05
  • 打赏
  • 举报
回复
算法数据结构只有水平高了才能感到她的重要性
showjim 2011-06-05
  • 打赏
  • 举报
回复
一只猫毒害了不只一代人
showjim 2011-06-05
  • 打赏
  • 举报
回复
我对算法的理解是:解决确定的实际问题的可行性方案。
可能这里的人提到的算法是与计算机相关的。
学习算法主要的目的就是煅练解决问题的能力,也就是寻求可行性方案的能力。
绿色夹克衫 2011-06-05
  • 打赏
  • 举报
回复
个人感觉,学习算法不仅能够让你知道如何去做,更能让你知道只能怎样做。不管是Google、还是微软,再牛的人在解决某些具体问题上,只能跟你使用同样的方法。许多NPC问题,你无法解决,他们同样无法解决。即使是再神奇的软件,组成他们的零件并没有那么神奇,都是你所熟悉的那些东西。在告诉你方法之后,你同样可以做出神奇软件的一部分。
贴膜boys 2011-06-05
  • 打赏
  • 举报
回复
我也不懂 想问问
绿色夹克衫 2011-06-05
  • 打赏
  • 举报
回复
是说这个世界可能是没有固定规律的么?

[Quote=引用 7 楼 caozhy 的回复:]

引用 6 楼 litaoye 的回复:
学习算法一方面可以让你了解天下之大,更重要的是让你知道天下之小。
换句话说就是,任何系统和应用,只要你肯花时间,学习,思考,读论文,没有多少东西是你不能深入了解的。

不一定啊,还有薛定谔的猫。。。
[/Quote]
threenewbee 2011-06-05
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 chrisak 的回复:]
薛定谔的猫?
[/Quote]
量子物理学最著名的思想实验之一。
ChrisAK 2011-06-05
  • 打赏
  • 举报
回复
薛定谔的猫?
兔子-顾问 2011-06-05
  • 打赏
  • 举报
回复
薛定谔的猫
threenewbee 2011-06-05
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 litaoye 的回复:]
学习算法一方面可以让你了解天下之大,更重要的是让你知道天下之小。
换句话说就是,任何系统和应用,只要你肯花时间,学习,思考,读论文,没有多少东西是你不能深入了解的。
[/Quote]
不一定啊,还有薛定谔的猫。。。
绿色夹克衫 2011-06-05
  • 打赏
  • 举报
回复
学习算法一方面可以让你了解天下之大,更重要的是让你知道天下之小。
换句话说就是,任何系统和应用,只要你肯花时间,学习,思考,读论文,没有多少东西是你不能深入了解的。
threenewbee 2011-06-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 sp1234 的回复:]
算法是基本的,不是只有那些高深的数学问题才叫做算法。比如简单地从数组中查询一个数据,然后从链表中查询数据,然后从树中查询数据,然后从已经排好序的数组中二分查找数据,然后从排序树中查找数据,这些都是算法。
[/Quote]
算法是无所不在的,再补充一条,算法是必须解决问题的,否则不是算法。

对于 1+1 这个问题来说,i = 1 + 1; i = 1 * 2; 都是算法。但是 i = 1 - 1 就不是算法。

对于通用的问题,为了省略起见,我们不描述问题问题本身,直接把算法实现就叫做算法。但是要明白,脱离了具体问题,就不存在任何算法。

算法最基本的原则是正确性,这和上面说的其实是一回事。正确性还意味着程序运行的过程是可重复的,不能只有1次正确,其余都不正确,或者一会儿正确,一会儿不正确。除了正确性,再有就是可行性,可行性只在现有条件下,在一定范围内可以求解。这个范围取决于需求,比如一个汽车自动控制程序,比如制动力监控程序,需要在毫秒级别做出响应。而一个数据库备份程序运行时间不能超过若干小时。可行性的另一个含义是经济性,一个是程序的运行是否高效、快速。另一个是程序的开发是否经济。片面追求技术优越,增加大量开发成本和开发时间的程序同样是不经济的。
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sp1234 的回复:]
“理由”这个问题,怎么说呢?!

好比如说许多人都没有学过中文专业,也是可以在中国说话甚至写点字条、日记甚至报告之类的。但是这并不是说专门靠写出漂亮文章、畅销书籍的人就不需要学点中文专业知识了。
[/Quote]+1
gaocy1 2011-06-05
  • 打赏
  • 举报
回复
顶起....
  • 打赏
  • 举报
回复
“理由”这个问题,怎么说呢?!

好比如说许多人都没有学过中文专业,也是可以在中国说话甚至写点字条、日记甚至报告之类的。但是这并不是说专门靠写出漂亮文章、畅销书籍的人就不需要学点中文专业知识了。
  • 打赏
  • 举报
回复
算法是基本的,不是只有那些高深的数学问题才叫做算法。比如简单地从数组中查询一个数据,然后从链表中查询数据,然后从树中查询数据,然后从已经排好序的数组中二分查找数据,然后从排序树中查找数据,这些都是算法。

111,119

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧