已知有11名学生的成绩如下:+55.60,65,66,70,74.78,80,85,90,95,利用折半查找+
1个回答
关注
展开全部
咨询记录 · 回答于2023-04-19
已知有11名学生的成绩如下:+55.60,65,66,70,74.78,80,85,90,95,利用折半查找+
您好,很高兴为您服务~已知有11名学生的成绩如下,要查找成绩为80的学生,具体步骤如下:1.将学生成绩按照从小到大的顺序排列,得到:55.60, 65, 66, 70, 74.78, 80, 85, 90, 95。2.确定查找范围为整个数组,即起始下标为0,结束下标为10。3.计算中间位置的下标:(0+10)/2=5。4.比较中间位置上的成绩与所需查找的成绩80的大小关系。- 若中间位置上的成绩小于80,则需要继续在大于中间位置下标的右侧范围进行查找。新的查找范围起始下标为中间位置下标加1,结束下标为原来的结束下标10。- 若中间位置上的成绩大于80,则需要继续在小于中间位置下标的左侧范围进行查找。新的查找范围起始下标为原来的起始下标0,结束下标为中间位置下标减1。- 若中间位置上的成绩等于80,则查找成功。5.重复3-4步骤,直到查找成功或者查找范围为空。