我刚刚在测试中丢失了50%的答案,因为我在我的期中编写了代码而不是算法,让我从A变为C.编写代码仍然被认为是算法表示吗?
维基百科:算法表示(因为编程风格几乎是基于共识的)
编辑:好的,让我明确几点:
测试要求伪代码,我们从未在课堂上"定义"; 我们刚刚为我们的算法写了英文.
它是一个Java类,并用Java方法和注释写出整个解决方案.所有这些都是手写的,写出来的时间比伪代码要长.我认为会更清楚.
我通常不会对这些事情提出问题,但这是A和C之间的区别,我有一个奖学金骑在我的考试上.
最后,我发布这篇文章有两个原因:
4.1我想展示现代编程社区对伪代码和算法表示的看法.
4.2我想知道"现实世界"中可以接受的东西; 我已经编程了一段时间,但我希望能够尽快为开源项目做贡献,而且我不想踩到任何人的脚趾.(虽然我很确定这个话题几乎没有机会进入现实世界).
再次感谢任何帮助/建议.
我需要找到构成一定金额的最佳硬币组合.基本上,我想用最少量的硬币到达那里.
例如:
如果货币系统有硬币:{13,8,1},那么贪婪的解决方案会将24改为{13,8,1,1,1},但真正的最优解是{8,8,8} .
我希望用Javascript写这个,但伪代码很好,因为我相信这会帮助更多的人.
javascript math numbers pseudocode mathematical-optimization
我有一个算法,我想知道它的作用.我相信你们中的一些人可以看看这个并告诉我它的作用,但我已经看了半个小时了,我仍然不确定.当我尝试玩它时,它会变得混乱.打破像这样的算法你有什么技巧?我如何分析这样的东西,知道发生了什么?
我的猜测是它将数字从最小到最大排序,但我不太确定.
1. mystery(a1 , a2 , . . . an : array of real numbers)
2. k = 1
3. bk = a1
4. for i = 2 to n
5. c = 0
6. for j = 1 to i ? 1
7. c = aj + c
8. if (ai ? c)
9. k = k + 1
10. bk = ai
11. return b1 , b2 , . . . , bk
Run Code Online (Sandbox Code Playgroud)
这是我尝试用Java编写的等价物,但我不确定我是否正确翻译:
public int[] foo(int[] …Run Code Online (Sandbox Code Playgroud) 我正在解决静态和动态范围中的以下代码问题.我得到了以下答案,但我需要有人确认我是否正确,因为我有点困惑.如果有人能以简单的方式解释,我真的很感激!
Static => (1)8 (2)27
Dynamic => (1)10 (2)27
proc main
var x,y,z;
proc sub1
var x,z
x := 6;
z := 7;
sub2;
x := y*z + x;
print(x); ---- (2)
end;
proc sub2
var x,y
x := 1;
y := x+z+2;
print(y); ---- (1)
end;
begin
x := 1; y:=3; z:=5;
sub1;
end
Run Code Online (Sandbox Code Playgroud) 我一直在寻找一种有效的单词分区算法,但没有太大的成功.例如,给定单词hello我想获得该单词的所有可能分区:{h,e,l,l,o},{h,e,l,lo},{h,e,llo} ,. ..,{你好}.我找到的所有内容都谈到了分词,这不是我的意思.
先感谢您!
我无法理解这个伪代码,并将其实现到我的程序中.任何人都可以更好地解释它或告诉我代码的外观吗?谢谢.
A - an array containing the list of numbers
numItems - the number of numbers in the list
for i = 0 to numItems - 1
for j = i+1 to numItems
if A[i] > A[j]
// Swap the entries
Temp = A[i]
A[i] = A[j]
A[j] = Temp
End If
Next j
Next i
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个函数来从二叉树中删除一个节点.我还没有对该函数进行编码,我正在尝试考虑删除节点时应考虑的不同条件.我猜可能的条件是:
该节点没有子节点
该节点有一个孩子
该节点有2个孩子
在每种情况下,执行删除功能的算法是什么?
我们对算法有以下输入:
G没有循环(也称为生成树)的图形,其中每个节点具有相关的权重.
我想找到一个独立的集合S:
S形成边缘G S[0] + S[1] + ... + S[n-1] (其中len(S)==n).这是我到目前为止的高级伪代码:
MaxWeightNodes(SpanningTree S):
output = {0}
While(length(S)):
o = max(node in S)
output = output (union) o
S = S \ (o + adjacentNodes(o))
End While
Return output
Run Code Online (Sandbox Code Playgroud)
有人可以告诉我我是否犯了任何错误,或者这个算法会给我我想要的结果吗?
如何为Scheme或Haskell等功能性编程语言编写伪代码?我搜索的所有内容都显示了C样式或Python样式的伪代码。