golang练习,消除切片中相邻的相同字符串
package main import ( "fmt" ) func main() { var s1 []string = []string{"1","1","3","4","4","4","4","5","5","12","21","4","4","5","5","12","21","4","4","5","5","12","21"} s1 = CLearStrings(s1) fmt.Println(s1) } //消除相邻的相同字符串 func CLearStrings(s []string)[]string{ for ;CheckSameStrings(s);{ fmt.Println(CheckSameStrings(s)) for i,j:=0,1;j<len(s);i,j=i+1,j+1{ if s[i] == s[j]{ copy(s[i:],s[j:]) s = s[:len(s)-1] } //fmt.Println(s) } } return s } //判断一个切片中是否有相邻的两个字符串相同,是的话返回true,不是的话返回false func CheckSameStrings(s []string)bool{ var sign bool = false for i,j:=0,1;j<len(s);i,j=i+1,j+1{ if s[i] == s[j]{ sign = true break } } return sign }