草庐IT

heaps-algorithm

全部标签

algorithm - 将字符串数组的数组转换为层次结构

假设我对数组进行了排序,如下所示:["A","B","C"]["A","B","D"]["A","E"]["F","G"]我现在想转换成typeNodestruct{NodeIDstringChildren[]Node}我尝试的是编写一种通过递归来完成此操作的方法。这是我目前用Go编写的尝试:funcTest_toNodes(t*testing.T){in:=[][]string{{"A","B","C"},{"A","B","D"},{"A","E"},{"F","G"},}want:=[]Node{{Name:"A",Children:[]Node{{Name:"B",Childr

algorithm - 将字符串数组的数组转换为层次结构

假设我对数组进行了排序,如下所示:["A","B","C"]["A","B","D"]["A","E"]["F","G"]我现在想转换成typeNodestruct{NodeIDstringChildren[]Node}我尝试的是编写一种通过递归来完成此操作的方法。这是我目前用Go编写的尝试:funcTest_toNodes(t*testing.T){in:=[][]string{{"A","B","C"},{"A","B","D"},{"A","E"},{"F","G"},}want:=[]Node{{Name:"A",Children:[]Node{{Name:"B",Childr

algorithm - 附加字符串和数组的类似 Go 函数未按预期运行

我有两个Go函数:funcpermutation(prefix,str[]int){n:=len(str)ifn==0{fmt.Println(prefix)}else{fori:=0;i第一个接受一个整数数组,第二个接受一个字符串。然后他们都计算数组或字符串的所有排列。我可以这样运行它们:permutation([]int{},[]int{1,2,3})perms("","123")它们的输出不一样:$gorunmain.go[123][133][333][333][333][333]123132213231312321我想追加我遗漏的数组有一些细微差别。我似乎无法弄清楚。知道发生了

algorithm - 附加字符串和数组的类似 Go 函数未按预期运行

我有两个Go函数:funcpermutation(prefix,str[]int){n:=len(str)ifn==0{fmt.Println(prefix)}else{fori:=0;i第一个接受一个整数数组,第二个接受一个字符串。然后他们都计算数组或字符串的所有排列。我可以这样运行它们:permutation([]int{},[]int{1,2,3})perms("","123")它们的输出不一样:$gorunmain.go[123][133][333][333][333][333]123132213231312321我想追加我遗漏的数组有一些细微差别。我似乎无法弄清楚。知道发生了

algorithm - Golang程序中的随机函数和持久化

我的程序如下:我想做的是看看是否有办法创建一个随机函数或使用一个内置函数,该函数能够知道这个程序中的哪些食物是从随机选择中选择的,并且没有使用它再过一周?我目前有1-6种食物,但我想确保一周内不会连续两次选择相同的食物,例如2。此外,我希望该程序能够写下最后选择的项目,这样它至少在一周内不会再次选择它。我能否使用一个可读取的简单文本文件来完成此操作?packagemainimport("fmt""math/rand""time")typeRecipestruct{//StructforrecipeinformationnamestringprepTimeintcookTimeintIn

algorithm - Golang程序中的随机函数和持久化

我的程序如下:我想做的是看看是否有办法创建一个随机函数或使用一个内置函数,该函数能够知道这个程序中的哪些食物是从随机选择中选择的,并且没有使用它再过一周?我目前有1-6种食物,但我想确保一周内不会连续两次选择相同的食物,例如2。此外,我希望该程序能够写下最后选择的项目,这样它至少在一周内不会再次选择它。我能否使用一个可读取的简单文本文件来完成此操作?packagemainimport("fmt""math/rand""time")typeRecipestruct{//StructforrecipeinformationnamestringprepTimeintcookTimeintIn

algorithm - 在节点图中,检测单个节点的破坏是否会导致两个不连接的图

我用golang编写的游戏需要这个。我有一堆节点,每个节点都包含其他节点的列表,因此任意两个节点之间都存在一条路径。(实际上对象是拼接在一起的各种大小的矩形)我需要测试每个节点,看看在它被破坏后,是否会在剩余节点中的任何两个节点之间保留一条路径,或者是否有些节点会变得无法访问。(即,给定矩形的丢失会导致两个未连接的平铺区域,还是会保持单个平铺区域)我希望有一种尽可能高效地执行此测试的方法,因为我的代码必须对许多不同的节点集执行此测试,尽可能多次,作为下降到字母表游戏树的一部分引擎。非常感谢您的帮助! 最佳答案 有一个线性时间算法可以

algorithm - 在节点图中,检测单个节点的破坏是否会导致两个不连接的图

我用golang编写的游戏需要这个。我有一堆节点,每个节点都包含其他节点的列表,因此任意两个节点之间都存在一条路径。(实际上对象是拼接在一起的各种大小的矩形)我需要测试每个节点,看看在它被破坏后,是否会在剩余节点中的任何两个节点之间保留一条路径,或者是否有些节点会变得无法访问。(即,给定矩形的丢失会导致两个未连接的平铺区域,还是会保持单个平铺区域)我希望有一种尽可能高效地执行此测试的方法,因为我的代码必须对许多不同的节点集执行此测试,尽可能多次,作为下降到字母表游戏树的一部分引擎。非常感谢您的帮助! 最佳答案 有一个线性时间算法可以

algorithm - 以预定义比率循环遍历服务器的 Go 算法

我想做一个算法,可以循环真实的东西,在我的例子中是后端服务器,按预定义的比率。例如我有2个后端服务器typeserverstruct{addrstringratiofloat64counterint64}//s2isabeastandmayhandle3timestherequeststhens1*edits1:=&server{":3000",0.25}s2:=&server{":3001",0.75}funcnextServer(){server:=next()//simplegoroutinethatprovidesthenextserverbetweens1ands2N:=se

algorithm - 以预定义比率循环遍历服务器的 Go 算法

我想做一个算法,可以循环真实的东西,在我的例子中是后端服务器,按预定义的比率。例如我有2个后端服务器typeserverstruct{addrstringratiofloat64counterint64}//s2isabeastandmayhandle3timestherequeststhens1*edits1:=&server{":3000",0.25}s2:=&server{":3001",0.75}funcnextServer(){server:=next()//simplegoroutinethatprovidesthenextserverbetweens1ands2N:=se