-1
嗨,大家好我有一個二進制搜索,有一個排序數字的列表框,用戶在文本框中輸入一個值來檢查它在列表框中的位置。然而,輸入到文本框中的數字顯示爲列表框內的位置,例如5輸入,「你正在搜索的號碼在5號位置」。二進制搜索無法正常工作
int Number = (Convert.ToInt16(textBox1.Text));
int a = lstHoldValue.Items.Count;
int start = 0, end = a - 1, mid = (start + end)/2;
while (start <= end)
{
mid = (start + end)/2;
if (Number == Convert.ToInt16(lstHoldValue.Items[mid]))
{
MessageBox.Show("The number you are searching is found in position " + (Number));
return;
}
請提供[MCVE],記住,你不需要使用GUI來證明或測試二進制搜索部分軸承本身。你也應該仔細看看你的MessageBox.Show調用。你用什麼來提供職位,你確定這就是你想要提供的? (提示:當你的代碼中有'...「+(Number)'時,當它顯示你的號碼時,你不應該感到驚訝......) –
查看並調試你的代碼。 numArray的內容是什麼? –
對不起,傢伙,ive給你看錯了代碼,我以前的代碼工作時,我用numArray。雖然我正在嘗試使用列表框來完成此操作。 –