我正在制作一个比较两个字符串的功能,看看是否是另一个字符串的重新排列.例如"hhe"和"heh"将产生真实但"hhe"和"hee"将是错误的.我想我可以通过总结字符串的元素并查看它们是否相同来做到这一点.我知道haskell,所以我不知道我是否可以在C代码中加入字符代码到目前为止:
comp :: String -> String-> Bool
comp x y = (sum x) == (sum y)
Run Code Online (Sandbox Code Playgroud)
这在编译时会产生错误.
我已经使用 Monte Carlo 方法实现了全局照明,使用 Scratch a pixel 教程作为指导。我的最终图像渲染非常嘈杂!下面的例子是 64 个样本,我以前使用过高达 512 的样本,但它仍然非常嘈杂。
任何想法可能是什么问题?
编辑:这是具有 128 个样本和 16x 超级采样的输出,产生 2048 个样本。噪音还是很大的!
如果我有两个输入的功能,例如
func x y
Run Code Online (Sandbox Code Playgroud)
如何将该函数应用于列表的所有元素,只有一个输入是列表的元素.所以,如果我有列表[1,2,3]和y = 4,我怎么能使用func作为x ie使用列表的每个元素
func 1 4
func 2 4
func 3 4
Run Code Online (Sandbox Code Playgroud)
并在列表中返回答案.
仅限前奏函数.
我知道 .和$都有正确的关联性,所以
f . g . x
Run Code Online (Sandbox Code Playgroud)
将会
f . (g . x)
Run Code Online (Sandbox Code Playgroud)
我也知道.优先于大多数,这样
f . x + 5 * 4
Run Code Online (Sandbox Code Playgroud)
将会
f . ((x + 5) * 4)
Run Code Online (Sandbox Code Playgroud)
但是当你有
f g x
Run Code Online (Sandbox Code Playgroud)
关联性和优先性是什么?
我创建了一个程序,以相反的顺序打印出一个字符串(以'.'结尾).程序获取每个char并以相反的顺序将其存储在链接列表中,然后在main函数中打印出链接列表.它工作,但它打印出所有其他char.
int main (void)
{
printf("Enter text: ");
char text;
textE *nexttext = NULL;
while(getchar() != '\n')
{
text = getchar();
nexttext = insertchar(nexttext, text);
}
}
Run Code Online (Sandbox Code Playgroud) 我已经创建了一个函数来打印字符串的每个可能的子序列.现在我需要制作一个打印最常见的功能.关于我可以从哪里开始的任何想法.不要求完全编码的功能只是一个开始的地方.此外,仅使用前奏函数(包括基数).
例如,如果我输入"jonjo"我的函数将返回["jonjo","jonj","jon","jo","j","onjo","onj"...]等.最常见的子字符串将是"jo".
在存在两个或更多个最多出现的子串的情况下,仅打印最长的子串.如果仍然相等,任何一个子串就足够了.
仅使用前奏函数,如何返回字符串列表中最长的字符串?
例如
["abc","ab","cb"]
Run Code Online (Sandbox Code Playgroud)
将返回
"abc"
Run Code Online (Sandbox Code Playgroud) haskell ×5
list ×3
string ×3
associative ×1
c ×1
intersection ×1
light ×1
linked-list ×1
max ×1
noise ×1
printf ×1
raytracing ×1
render ×1