インタビューでこの質問がありました。最初の部分はかなりシンプルで、配列内の連続する整数の最大数を得るためのコードを書く必要がありました。実質的に大きい配列(複数のマシンにまたがる)で連続する整数の最大数を得る方法
どのようにこのロジックを変更します複数のマシンに保存されている配列のために働くために:
int count = 0, max = 0;
for(int i = 1; i < array.length; i++) {
if((array[i - 1] + 1) == array[i])) //curr is consecutive to prev
count++;
else
count = 0; //reset the counter as sequence is broken
//Keep track of maximum
if(count > max)
max = count;
}
System.out.println(max); //print the length of largest consecutive integers
第二部がそれに質問をフォローアップだった:私が書いたコードを以下に示しますか?