623: 程序设计C 实验五 题目六 排序查找(python)

简介: 623: 程序设计C 实验五 题目六 排序查找(python)

已收藏

难度:简单

标签:暂无标签

题目描述

采用选择法对15个整数排序,排序完成后各整数按照从大到小的顺序排列。排序完成后输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。

输入

输入共有两行: 第一行输入15个整数. 第二行输入你要查找的整数.

输出

输出你要查找的整数在排好序的数组中是第几个元素.如果该数不在数组中,则输出“wucishu!”。如果输入的数在数组中有多个,则输出此数在排好序后的数组中第一次出现的位置.具体请见Sample Output .

样例输入复制

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

15

样例输出复制

1


题目提供者:西南科技大学计算机学院C++程序设计实验指导书 v1.2

时空限制:1000ms/65535kb

通过次数:3578

提交次数:13914

def binarySearch(list,temp):
    l = 0
    r = len(list) - 1
    while l<=r:
        mid=l+(r-l)//2
        if list[mid]<temp:
            r=mid-1
        elif list[mid]>temp:
            l=mid+1
        elif list[mid]==temp:
            return mid
    return -1
list=list(map(int,input().split()))
n=int(input())
for i in range(0,len(list)-1):
    for j in range(i+1,len(list)):
        if list[i]<list[j]:
            list[i],list[j]=list[j],list[i]
if binarySearch(list,n)+1==0:
    print("wucishu!")
else:
    print(binarySearch(list,n)+1)

注意排序后的数组是从大到小的,依次不能使用普通的二分查找,而是要反号

相关文章
|
6天前
|
数据处理 Python
如何使用Python的Pandas库进行数据排序和排名
【4月更文挑战第22天】Pandas Python库提供数据排序和排名功能。使用`sort_values()`按列进行升序或降序排序,如`df.sort_values(by=&#39;A&#39;, ascending=False)`。`rank()`函数用于计算排名,如`df[&#39;A&#39;].rank(ascending=False)`。多列操作可传入列名列表,如`df.sort_values(by=[&#39;A&#39;, &#39;B&#39;], ascending=[True, False])`和分别对&#39;A&#39;、&#39;B&#39;列排名。
24 2
|
6天前
|
Python
557: 程序设计C 实验四 题目三 字符串交叉插入(python)
557: 程序设计C 实验四 题目三 字符串交叉插入(python)
|
6天前
|
Python
277: 程序设计C 实验二 题目五 统计二进制数中的1的个数(python)
277: 程序设计C 实验二 题目五 统计二进制数中的1的个数(python)
|
6天前
|
数据处理 Python
如何使用Python的Pandas库进行数据排序和排名?
Pandas在Python中提供数据排序和排名功能。使用`sort_values()`进行排序,如`df.sort_values(by=&#39;A&#39;, ascending=False)`进行降序排序;用`rank()`进行排名,如`df[&#39;A&#39;].rank(ascending=False)`进行降序排名。多列操作可传入列名列表,如`df.sort_values(by=[&#39;A&#39;, &#39;B&#39;], ascending=[True, False])`。
33 6
|
6天前
|
数据可视化 数据处理 索引
Python如何对数据进行排序和排名操作?
Python如何对数据进行排序和排名操作?
45 0
|
1天前
|
算法 开发工具 Python
python排序的几种方法(3)
python排序的几种方法(3)
|
1天前
|
算法 程序员 Python
python排序的几种方法(1)
python排序的几种方法(1)
|
1天前
|
机器学习/深度学习
python-随机森林后筛选最重要变量,模型准确率、随机森林混淆矩阵结果、基尼系数排序图
python-随机森林后筛选最重要变量,模型准确率、随机森林混淆矩阵结果、基尼系数排序图
|
6天前
|
算法 Python
Python中不使用sort对列表排序的技术
Python中不使用sort对列表排序的技术
21 1
|
6天前
|
Python
使用Python pandas的sort_values()方法可按一个或多个列对DataFrame排序
【5月更文挑战第2天】使用Python pandas的sort_values()方法可按一个或多个列对DataFrame排序。示例代码展示了如何按'Name'和'Age'列排序 DataFrame。先按'Name'排序,再按'Age'排序。sort_values()的by参数接受列名列表,ascending参数控制排序顺序(默认升序),inplace参数决定是否直接修改原DataFrame。
28 1