欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java每隔兩個數(shù)刪掉一個數(shù)問題詳解

 更新時間:2021年04月23日 08:36:25   作者:橘白呀啊  
這篇文章主要介紹了Java每隔兩個數(shù)刪掉一個數(shù)問題詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

題目描述

有一個數(shù)組a[N]順序存放0~N-1,要求每隔兩個數(shù)刪掉一個數(shù),到末尾時循環(huán)至開頭繼續(xù)進行,求最后一個被刪掉的數(shù)的原始下標位置。

以8個數(shù)(N=7)為例:{0,1,2,3,4,5,6,7},
0->1->2(刪除)->3->4->5(刪除)->6->7->0(刪除)
如此循環(huán)直到最后一個數(shù)被刪除。

輸入:
8

輸出:
6

以下是本篇文章正文內(nèi)容,下面案例可供參考

解題思路

一看到這個題目,就想到了隊列的約瑟夫環(huán)的問題
此題思路:將兩個數(shù)字取出來放到隊列的后邊,刪掉第三個數(shù)字,如此循環(huán),當(dāng)隊列只剩一個數(shù)字的時候,刪掉它就是最后一個刪除的數(shù)字。

代碼如下

import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;

public class Main1 {
    /**
     * 每日一題-隔兩個刪數(shù)問題
     * 類似于約瑟夫環(huán)問題
     * @param args
     */
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        if(scanner.hasNext()) {
            int n = scanner.nextInt();
            Queue<Integer> queue = new LinkedList<>();
            for (int i = 0; i < n; i++) {
                queue.offer(i);//放進隊列中
            }
            while(queue.size()>1){
            //將兩個放到隊尾,再刪一個
                queue.offer(queue.poll());
                queue.offer(queue.poll());
                queue.poll();
            }
            System.out.println(queue.poll());
        }
    }
}

 到此這篇關(guān)于Java每隔兩個數(shù)刪掉一個數(shù)問題詳解的文章就介紹到這了,更多相關(guān)Java每隔兩個數(shù)刪掉一個數(shù) 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java實現(xiàn)兩個文件的拼接

    java實現(xiàn)兩個文件的拼接

    這篇文章主要為大家詳細介紹了java實現(xiàn)兩個文件的拼接,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • java9新特性Reactive?Stream響應(yīng)式編程?API

    java9新特性Reactive?Stream響應(yīng)式編程?API

    這篇文章主要為大家介紹了java9新特性響應(yīng)式編程API的特點詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-03-03
  • spring聲明式事務(wù)管理解析

    spring聲明式事務(wù)管理解析

    這篇文章主要為大家詳細介紹了spring聲明式事務(wù)管理,對spring事務(wù)管理進行深入了解,感興趣的小伙伴們可以參考一下
    2016-10-10
  • java分頁工具類的使用方法

    java分頁工具類的使用方法

    這篇文章主要為大家詳細介紹了java分頁工具類的使用方法,穩(wěn)定的分頁效果,包括導(dǎo)航頁碼功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Springmvc異常處理器及攔截器實現(xiàn)代碼

    Springmvc異常處理器及攔截器實現(xiàn)代碼

    這篇文章主要介紹了Springmvc異常處理器及攔截器實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • springboot如何實現(xiàn)異步響應(yīng)請求(前端請求超時的問題解決)

    springboot如何實現(xiàn)異步響應(yīng)請求(前端請求超時的問題解決)

    這篇文章主要給大家介紹了關(guān)于springboot如何實現(xiàn)異步響應(yīng)請求(前端請求超時的問題解決)的相關(guān)資料,文中通過實例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用springboot具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2023-01-01
  • IDEA實現(xiàn)Maven項目創(chuàng)建并連接Tomcat方式

    IDEA實現(xiàn)Maven項目創(chuàng)建并連接Tomcat方式

    Maven是一款由Apache開發(fā)的項目管理工具,主要用于Java項目的構(gòu)建和依賴管理,它通過pom.xml文件自動管理項目依賴的jar包,簡化了項目構(gòu)建過程,Maven支持項目從編寫源代碼到編譯、測試、打包、部署的全過程管理,其依賴管理功能免去了手動添加jar包的麻煩
    2024-10-10
  • java使用Feign實現(xiàn)聲明式Restful風(fēng)格調(diào)用

    java使用Feign實現(xiàn)聲明式Restful風(fēng)格調(diào)用

    這篇文章主要為大家詳細介紹了java使用Feign實現(xiàn)聲明式Restful風(fēng)格調(diào)用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • 談?wù)凧ava中對象,類和this,super,static關(guān)鍵字的使用

    談?wù)凧ava中對象,類和this,super,static關(guān)鍵字的使用

    對象:對象是類的一個實例,有狀態(tài)和行為。類:類是一個模板,它描述一類對象的行為和狀態(tài)。本文就來和大家聊聊Java中對象,類和關(guān)鍵字的使用,需要的可以參考一下
    2022-08-08
  • Netty分布式pipeline管道Handler的添加代碼跟蹤解析

    Netty分布式pipeline管道Handler的添加代碼跟蹤解析

    這篇文章主要介紹了Netty分布式pipeline管道Handler的添加代碼跟蹤解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-03-03

最新評論