第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

為什么我的排序算法在 for 循環(huán)的第三次迭代后失敗?

為什么我的排序算法在 for 循環(huán)的第三次迭代后失?。?/h1>
BIG陽 2021-10-20 11:10:32
/* 這是提示:以一個(gè)未排序的數(shù)組 a 開頭輸出:排序數(shù)組a。找出數(shù)組a[1:n]中最小的元素,稱其為a[j]。如果它小于 a[0],則將其與 a[0] 交換。用索引 1, 2, ... 重復(fù)這個(gè)過程,直到 who 數(shù)組被排序。*/public class assing2 {public static void main(String args[]) {     //array of ints    int[] A = new int[] {33, 20, 8, 11, 5};    int min_id = 0;    int temp_i = 0;    //int temp_max = 0;    for (int i = 0; i < A.length; i++)     {        min_id = i;        temp_i = A[i];        for (int j = 1; j < A.length; j++)        {            if (A[min_id] > A[j])            {                min_id = j;            }        }        A[i] = A[min_id];        A[min_id] = temp_i;    }    System.out.println("Sorted array");     for ( int i = 0; i < A.length; i++)    {        System.out.println(A[i]);    }} }這是輸出排序數(shù)組52011338當(dāng)我在調(diào)試器中運(yùn)行它時(shí),我可以看到第一個(gè) for 循環(huán)的前 2 次迭代看起來像它的工作,但之后它對排序的內(nèi)容進(jìn)行了排序。我的邏輯有什么問題?
查看完整描述

1 回答

?
慕斯王

TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超2個(gè)贊

for (int j = 1; j < A.length; j++)

是錯(cuò)的。您應(yīng)該只檢查 i 之后的元素,因?yàn)?i 之前的元素按之前的迭代排序。所以應(yīng)該是

for(int j = i+1; j < A.length; j++)

同樣在第一個(gè)循環(huán)中,您不需要對最后一個(gè)元素做任何事情。您可以將停止條件更改為i<A.length-1


查看完整回答
反對 回復(fù) 2021-10-20
  • 1 回答
  • 0 關(guān)注
  • 202 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)