我需要绘制一个填充的玫瑰,它的中心是(30,30,30),它的半径是2.我写了下面的代码:
Run Code Online (Sandbox Code Playgroud)t = linspace(0,2*pi,201); r = sqrt(abs(2*sin(5*t))); [x y]=pol2cart(t,r); z=x; plot3(x+30,y+30,z) grid on;
我得到了以下情节:

我如何绘制一片玫瑰,它的叶子不仅在XY平面上?
在Python中,为了排列字符串的字母,可以写
import random
random.seed(str_key)
length = range(len(original_str))
random.shuffle(length)
join "".join([original_key[idx] for idx in length])
Run Code Online (Sandbox Code Playgroud)
我想知道种子对密钥字符串做了什么,以及它如何从中产生排列(或者说随机播放如何做到这一点)。例如,如果我将密钥设为“hGd”,我如何获得该特定输出,而如果我编写另一个密钥(如“AGd”),我会得到另一个输出?
编辑:我尝试对该代码使用的解密算法是:
for key in itertools.product(*3*[string.ascii_letters]):
indices = range(len(enc_msg))
list_encrypted_msg = list(enc_msg)
random.seed(key)
random.shuffle(indices)
decrypted = ""
for idx in indices[::-1]:
decrypted += list_encrypted_msg[idx]
try:
if not decrypted.index("The"):
print decrypted
except ValueError:
continue
return "not found!"
Run Code Online (Sandbox Code Playgroud) 我在维基百科中阅读了knuth的算法,我想知道第三步.如果我理解每个选项的正确性(即使在步骤2中没有删除),我们计算每个ffedback可以删除多少可能的猜测.对于那一步,我们采取最低限度 之后,我们在最小值上找到最大值并获取最大值所属的代码.这将是我们的第二个猜测.我不确定接下来可以做什么,因为每次我们不改变最小值的最大值(或最小值).另外,我如何在c#中实现这一步骤.我该如何处理,如何实施该步骤?反馈的最小值真正意味着什么?