一个明显的解决方案是
int n = 2134;
while(n > 9)
n /= 10;
Run Code Online (Sandbox Code Playgroud)
这需要线性时间.我们可以做得更快吗?
这比线性时间快吗:
char s[100];
sprintf(s, "%d", n);
n = s[0]-'0';
Run Code Online (Sandbox Code Playgroud)
其他方式是什么(效率是首要考虑因素)?
我见过这个,除了我只需要找到第一个数字.(另外,我不明白答案).