This topic created in 2558 days ago, the information mentioned may be changed or developed.
今天和一好基友在讨论一个代码里面的逻辑怎么写的问题,主要是为了修改两个队列中数据处理先后次序的问题。
给定一个 A 队列和 B 队列,在需求中每次只允许取一个数据来处理,并且还要求是这两个队列里的。
A 和 B 交错着取(这次取 A,那么下次就要取 B )。
当我们在日常吹牛皮的很嗨时,边上就有哥们突然提到算法这个词,我们当时都一下子懵逼了。
因为在我们的眼里,只是对两个 list 取数据先后的问题,仅仅是一种代码逻辑问题,实际上对最终产出影响很小。我们眼中的算法要么是具备很强的数学理论基础,要么是解决某种特定问题的总称。
不晓得大家怎么看这两个词。码代码时间越久,总感觉这些定义很模糊了,有点事实而非。
18 replies • 2019-06-21 17:03:14 +08:00
 |
|
1
Chemist Jun 20, 2019 1
代码 + 逻辑 = 算法
|
 |
|
4
agagega Jun 20, 2019 via iPhone
然而这就是算法。
|
 |
|
6
mcfog Jun 20, 2019
算法是用于解决问题的一系列指令描述。他说的没问题,并不是只有教科书上的或 leetcode 里的那些才叫算法。解决“交互消费两个不同队列”这个特定问题的方法,当然是算法
an algorithm is a set of instructions, typically to solve a class of problems or perform a computation. -- Wiki
至于“代码逻辑”,我不知道什么叫代码逻辑,甚至找不到这个词对应的英文是什么,不建议使用这个模糊不清的词
|
 |
|
7
syahd Jun 20, 2019 via Android
算法的五个特性:有穷性,确定性,输入,输出,可行性。 简而言之,算法就是能解决问题的有穷步骤。
|
 |
|
8
jmc891205 Jun 20, 2019
算法说白了就是一个可以精确描述的解决某种问题的方法 生活中处处都是算法
|
 |
|
9
baicheng10 Jun 20, 2019
这是算法。 但我其实和楼主的看法比较类似,对词义上有狭义的偏见,心态吧,像上面说的,“不敢把自己写的东西称为算法”,有点像谦称一样。
|
 |
|
11
bzi Jun 20, 2019
也算是算法,只不过因为简单而不好意思对外宣称是算法吧
|
 |
|
12
zagfai Jun 20, 2019 1
code 是实实在在的,algo 是虚的
|
 |
|
13
Norie Jun 20, 2019 via Android
算法不就是计算的方法吗?
|
 |
|
14
akira Jun 20, 2019
一般说的算法 应该是指 搜索 查询 遍历 排序 的算法
但是 广义上的算法,你这个确实也是能叫算法
|
 |
|
15
pkookp8 Jun 20, 2019 via Android
我认为 与业务无关,可以抽象成特定问题的代码 叫做算法 比如你这里 与业务有关的代码,就叫做逻辑代码。 比如我得先发消息 a,再发消息 b,否则报错
但是我通常不会任何可抽象的问题都叫算法。比如我写了加减乘函数,算,但我不会说我今天写了一套算法
|
 |
|
16
leishi1313 Jun 21, 2019 via Android
茴字的两种写法罢了,没必要争论。不同的代码逻辑可以是不同的算法,相同的算法可以有不同的代码逻辑,硬要细分侧重点是有不同,但是很多时候大家也会混着用的,这时候这俩基本就等于“程序的实现方法”
|
 |
|
17
lyminghao Jun 21, 2019
这俩词没啥区别吧。。。至少在定义上算法也没什么高大上的,只是实际使用中算法一般指比较高难度的算法 23333
|
 |
|
18
enjoyCoding Jun 21, 2019
一般业务上面的东西我喜欢用逻辑代称 不涉及业务只有数据结构或者想 lz 说的这种数据逻辑我称之为算法 像 lz 这个问题 很自然的想到归并排序对吧
|