剑指 Offer 44. 数字序列中某一位的数字
Posted 来老铁干了这碗代码
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指 Offer 44. 数字序列中某一位的数字相关的知识,希望对你有一定的参考价值。
class Solution {
public int findNthDigit(int n) {
int digit = 1; // 该数的位数
long start = 1; // 该位数的起始值,1位数的起始值为1, 2位数的起始值为10
long count = 9; // 某位数所有数字连在一起的长度。
while(n > count) {
n -= count;
digit += 1;
start *= 10;
count = digit * start * 9;
}
long num = start + (n-1) / digit;
return String.valueOf(num).charAt((n-1)%digit) - '0';
}
}
以上是关于剑指 Offer 44. 数字序列中某一位的数字的主要内容,如果未能解决你的问题,请参考以下文章