<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 從 Java 中的序列/數組中查找缺失的數字 > 原文: [https://howtodoinjava.com/puzzles/find-missing-number-from-series/](https://howtodoinjava.com/puzzles/find-missing-number-from-series/) 在 [Java 面試](https://howtodoinjava.com/java-interview-questions/)上,一個常見的題目是 – 從一系列數字或數組中找到缺失的數字。 這個題目已經在 Amazon 中問過。 在這個 Java 題目中,您有一系列數字開頭(例如`1…N`),而該系列中恰好缺少一個數字。 您必須編寫一個 **Java 程序來查找**系列中的缺失數字。 ## 查找數字的解決方案 出乎意料的是,僅當您已經知道該題目的解決方案時,它才非常簡單。 1. 計算`A = n (n+1)/2`,其中`n`是序列`1…N`中的最大數。 2. 計算`B`為給定序列中所有數字的總和 3. 缺少號碼等于`A – B` 讓我們用代碼編寫解決方案。 ```java public class FindMissingNumber { public static void main(String[] args) { //10 is missing int[] numbers = {1,2,3,4,5,6,7,8,9, 11,12}; int N = 12; int idealSum = (N * (N + 1)) / 2; int sum = calculateSum(numbers); int missingNumber = idealSum - sum; System.out.println(missingNumber); } private static int calculateSum(int[] numbers) { int sum = 0; for (int n : numbers) { sum += n; } return sum; } } Output: 10 ``` ## 查找數字的解決方案 – Java8 上面的代碼雖然很簡單,但是可以使用新語言功能(例如 [Java8](https://howtodoinjava.com/java-8-tutorial/) 中的 [lambda](https://howtodoinjava.com/java8/complete-lambda-expressions-tutorial-in-java/))減少許多行。 讓我們看看如何? ```java import java.util.Arrays; public class FindMissingNumber { public static void main(String[] args) { //10 is missing int[] numbers = {1,2,3,4,5,6,7,8,9, 11,12}; int N = 12; int idealSum = (N * (N + 1)) / 2; int sum = Arrays.stream(numbers).sum(); int missingNumber = idealSum - sum; System.out.println(missingNumber); } } Output: 10 ``` 這樣的題目很容易解決,但是在任何面試中問清楚解決方案總是很有用的。 因此,準備在下一次面試中找到數組中缺少的數字。 學習愉快! 參考: [SO 帖子](https://stackoverflow.com/questions/2113795/quickest-way-to-find-missing-number-in-an-array-of-numbers)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看