亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在數組中查找領導者

在數組中查找領導者

牧羊人nacy 2023-03-02 16:05:46
編寫一個程序來打印數組中的所有領導者。如果一個元素大于其右側的所有元素,則該元素是領導者。最右邊的元素始終是領導者。例如 int 數組 {16, 17, 4, 3, 5, 2},前導為 17、5 和 2。讓輸入數組為 arr[],數組的大小為 size。o/p 我得到的是 2 5 17注意:我想要 o/p 相反的順序,還有一個在另一個下面(換行符)。class LeadersInArray  {     /* Java Function to print leaders in an array */    void printLeaders(int arr[], int size)     {         int max_from_right =  arr[size-1];         /* Rightmost element is always leader */        System.out.print(max_from_right + " ");         for (int i = size-2; i >= 0; i--)         {             if (max_from_right < arr[i])             {                        max_from_right = arr[i];             System.out.print(max_from_right + " ");             }         }         }     public static void main(String[] args)      {         LeadersInArray lead = new LeadersInArray();         int arr[] = new int[]{16, 17, 4, 3, 5, 2};         int n = arr.length;         lead.printLeaders(arr, n);     } } 預期輸出:   17   5   2
查看完整描述

1 回答

?
米琪卡哇伊

TA貢獻1998條經驗 獲得超6個贊

Intead 在循環中打印那些,將它們添加到列表中,然后單獨打印它們。以下是您的代碼中的更改。


class LeadersInArray {

    List<Integer> printLeaders(int[] arr, int size) {

        List<Integer> list = new ArrayList<>();


        int max_from_right = arr[size - 1];


        list.add(max_from_right);



        for (int i = size - 1; i >= 0; i--) {

            if (max_from_right < arr[i]) {

                max_from_right = arr[i];

                list.add(max_from_right);

            }

        }

        return list;

    }


    public static void main(String[] args) {

        LeadersInArray lead = new LeadersInArray();

        int arr[] = new int[]{16, 17, 4, 3, 5, 2};

        List<Integer> integers = lead.printLeaders(arr, arr.length);

        for(int i = integers.size()-1; i>=0 ;i--){

            System.out.println(integers.get(i));

        }


    }


查看完整回答
反對 回復 2023-03-02
  • 1 回答
  • 0 關注
  • 124 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號