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

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

如何修復(fù)我的 C# 快速排序算法中的隱式轉(zhuǎn)換錯(cuò)誤?

如何修復(fù)我的 C# 快速排序算法中的隱式轉(zhuǎn)換錯(cuò)誤?

C#
慕工程0101907 2022-12-24 10:54:13
我正在嘗試實(shí)現(xiàn)一種快速排序算法來對(duì)浮點(diǎn)數(shù)組進(jìn)行排序。每當(dāng)我引用數(shù)組中的索引時(shí),我都會(huì)收到此錯(cuò)誤:無法將類型“float”隱式轉(zhuǎn)換為“int”。存在顯式轉(zhuǎn)換(您是否缺少轉(zhuǎn)換)?這是算法:class Quicksort{    public static void Sort(float[] numbers, int left, int right)    {        float i = Convert.ToSingle(left);        float j = Convert.ToSingle(right);        var pivot = numbers[(left + right) / 2];        while (i <= j)        {            while (numbers[i] < pivot) //ERROR HERE                i++;            while (numbers[j] > pivot) //ERROR HERE                j--;            if (i <= j)            {                float tmp = numbers[i]; //ERROR HERE                numbers[i] = numbers[j]; //ERROR HERE                numbers[j] = tmp; //ERROR HERE                i++;                j--;            }        }        if (left < j)            Sort(numbers, left, j);        if (i < right)            Sort(numbers, i, right);    }}numbers[i]每當(dāng)我使用或時(shí)出現(xiàn)轉(zhuǎn)換錯(cuò)誤numbers[j]我將如何解決這個(gè)問題?
查看完整描述

2 回答

?
富國滬深

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

問題是您正在嘗試對(duì)數(shù)組索引使用浮點(diǎn)值。這是行不通的:無論數(shù)組元素的類型如何,數(shù)組索引在 C#中始終是整數(shù)。這是有道理的——例如,沒有“數(shù)組的元素 1.3”這樣的東西。

只需將方法的前兩行更改為:

int i = left;
int j = right;

...或完全刪除iand并在整個(gè)方法中j使用leftand 。right


查看完整回答
反對(duì) 回復(fù) 2022-12-24
?
一只名叫tom的貓

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

問題是 i 和 j 是索引器,必須定義為 int 類型。

int i = left;
int j = right;


查看完整回答
反對(duì) 回復(fù) 2022-12-24
  • 2 回答
  • 0 關(guān)注
  • 92 瀏覽

添加回答

舉報(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)