Simpler golang solution
```\nfunc Removekdigits(num string, k int) string {\n\tstack := make([]rune, 0)\n\tfor _, ch := range num {\n\t\tfor len(stack) > 0 && stack[len(stack)-1] > ch 
```\nfunc Removekdigits(num string, k int) string {\n\tstack := make([]rune, 0)\n\tfor _, ch := range num {\n\t\tfor len(stack) > 0 && stack[len(stack)-1] > ch && k > 0 {\n\t\t\tstack = stack[:len(stack)-1]\n\t\t\tk--\n\t\t}\n\t\tstack = append(stack, ch)\n\t}\n\n\t// If all k digits haven\'t been removed, remove them.\n\tfor k > 0 {\n\t\tstack = stack[:len(stack)-1]\n\t\tk--\n\t}\n\n\t// Remove leading zeroes\n\tfor i:=0;i<len(stack); i++ {\n\t\t// Return fast if you find a non-zero digit.\n\t\tif stack[i] != \'0\' {\n\t\t\treturn string(stack[i:])\n\t\t} \n\t}\n\n\t// If you reach here, result must be zero.\n\treturn "0"\n}
['Go']