Йордан обнови решението на 14.10.2013 08:43 (преди над 4 години)
+func parsePath(path string) string {
+
+
+ l := list.New()
+ temp := strings.Split(path , "/" )
+ for i , v := range temp {
+ l.PushBack(v)
+ if(temp [i] == ".."){
+ l.Remove(l.Back())
+ l.Remove(l.Back())
+ }
+ }
+ fmt.Print(temp)
+ var to_return string
+
+
+ for e := l.Front(); e != nil; e = e.Next() {
+ to_return += e.Value
+ to_return +="/"
+
+ }
+
+ return to_return
+
+}
Интересно решение но има няколко неща които е добре да пипнеш.
- Слагай package main и import-ите в началото на решението.
- Използвай go fmt за да да си подредиш кода преди да го предадеш.
- Не може да озползваш += за стрингове. Трябва да откриеш друг начин за конкатанация.
Може да пробваш да го изпълниш за да видиш грешката. http://play.golang.org/p/cqtXAVWzDC