我最近在接受采访时被问到这个问题:
"如何在不使用任何库函数的情况下将"12345"形式的字符串解析为其整数表示12345,而不管语言是什么?
我想到了两个答案,但面试官说有三分之一.这是我的两个解决方案:
解决方案1:保留一个映射'1'=> 1,'2'=> 2等的字典.然后一次解析一个字符,查找字典中的字符,然后乘以位值.总结结果.
解决方案2:一次解析一个字符串,并从每个字符中减去"0".这将给你'1' - '0'= 0x1,'2' - '0'= 0x2等.再次,乘以位值并对结果求和.
任何人都可以想到第三种解决方案可能是什么?
谢谢.