首页 > 试题广场 >

输入整型数组和排序标识,对其元素按照升序或降序进行排序

[编程题]输入整型数组和排序标识,对其元素按照升序或降序进行排序
  • 热度指数:213158 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
输入整型数组和排序标识,对其元素按照升序或降序进行排序

数据范围: ,元素大小满足

输入描述:

第一行输入数组元素个数
第二行输入待排序的数组,每个数用空格隔开
第三行输入一个整数0或1。0代表升序排序,1代表降序排序



输出描述:

输出排好序的数字

示例1

输入

8
1 2 4 9 3 55 64 25
0

输出

1 2 3 4 9 25 55 64
示例2

输入

5
1 2 3 4 5
1

输出

5 4 3 2 1
n=input().split()
k=list(map(int,input().split()))
b=int(input())
if b == 0:
    k=sorted(k)
    for i in k:
        print(i,end=' ')
elif b == 1:
    k=sorted(k)[::-1]
    for j in k:
        print(j,end=' ')
else:
    print('b只能输入0或1')
编辑于 2024-03-13 09:33:32 回复(0)
input()
list_initial = input().split()
list_output = []
for i in range(len(list_initial)):
    list_output.append(int(list_initial[i]))
list_output.sort(reverse=int(input()))
print(' '.join(list(map(str,list_output))))

发表于 2023-09-25 14:25:14 回复(0)
# 解法一
while True:
    try:
        _ = input()
        # 输入按空格分隔然后map为整数再转为list
        s = list(map(int, input().split(" ")))
        # 布尔型变量判断0/1
        flag = bool(int(input()))
        # 按flag的是否来升序或者降序排列
        s = sorted(s, reverse=flag)
        for i in s:
            print(i, end=" ")
    except:
        break

# 解法二
while True:
    try:
        _ = input()
        # 直接分隔
        s = input().split(" ")
        # 布尔型变量判断0/1
        flag = bool(int(input()))
        # 指定类型后,按flag的是否来升序或者降序排列
        s = sorted(s, key = int, reverse=flag)
        for i in s:
            print(i, end=" ")
    except:
        break

发表于 2023-09-16 10:32:15 回复(0)
num = int(input())
input_str = input()
input_array = [int(i) for i in input_str.split(" ")]
tag = int(input())
if tag == 0:
    input_array.sort()
else:
    input_array.sort(reverse=True)

out = ""
for i in range(len(input_array)):
    out += str(input_array[i])
    if i < len(input_array) - 1:
        out += " "
print(out)

发表于 2023-09-12 00:45:37 回复(0)
n = int(input())
num = list(map(int,input().split()))
a = int(input())
if n in range(1,1001):
    if a == 0:
        num.sort()
    
    elif a ==1:
        num.sort(reverse=True)
    else:
        print('输入错误')

for i in num:
    print(i,end=' ')

发表于 2023-08-22 12:04:31 回复(0)
使用sorted()函数进行排序
n = eval(input())
l = input().strip().split()
flag = eval(input())

print(" ".join(sorted(l,key = int, reverse=flag)))



发表于 2023-07-05 20:31:05 回复(0)
while True:
try:
s = int(input())
lis = list(map(int, input().split()))
ordnum = int(input())
if ordnum == 0:
for i in sorted(lis):
print(i,end = " ")
elif ordnum == 1:
for i in (sorted(lis)[::-1]):
print(i,end = " ")
else: break
except:
break
发表于 2023-06-25 11:09:28 回复(0)
a = int(input())
b = input().split()
c = int(input())
# a = 5
# b = "1 2 3 4 5".split()
# c = 1

list1 = list(map(lambda x: int(x), b))
# print(list1)
#
if c == 0:
    l3 = sorted(list1, reverse=False)
    for j in l3:
        print("".join(str(j)), end=" ")
else:
    l3 = sorted(list1, reverse=True)
    for j in l3:
        print("".join(str(j)), end=" ")

发表于 2023-06-13 16:19:00 回复(0)
n = int(input())
data = list(map(int,input().split()))
k = int(input())

def part(data, l, r):
    pivot = data[l]
    while l < r:
        # 右指针
        while l < r and data[r] >= pivot:
            r -=1 
        if data[r] < pivot:
            data[l] = data[r]
        # 左指针
        while l < r and data[l] <= pivot:
            l += 1
        if data[l] > pivot:
            data[r] = data[l]
    if l==r:
        data[l] = pivot
    mid = l #&nbs***bsp;r
    return mid

def quick_sort(data, l, r):
    if l > r:
        return 
    mid = part(data, l, r)
    quick_sort(data, l, mid-1)
    quick_sort(data, mid+1, r)

# 用快排
quick_sort(data, l=0, r=len(data)-1)
if k == 1: # 降序
    data = sorted(data,reverse=True)
print(' '.join([str(i) for i in data]))

    

发表于 2023-03-21 12:42:01 回复(0)
import sys

n = int(input())
t_list = list(map(int,input().split()))
k = int(input())

if n in range(1,1001):
    if k == 0:
        print(*sorted(t_list))
    elif k == 1:
        print(*sorted(t_list,reverse=True))
    else:
        print("排序方式输入值只能是0或1")
发表于 2023-03-12 18:49:57 回复(0)
n = input()
s = map(int,input().split())
flag = int(input())
if flag==1:
rev=True
else:
rev=False
res = sorted(s,reverse=rev)
for i in res:
print(i,end=" ")
发表于 2023-02-26 00:42:47 回复(0)
n = int(input())
ls = input().split()
r = int(input())
ls = sorted(map(int,ls),reverse=bool(r))
print(" ".join(map(str,ls)))

发表于 2023-02-22 17:39:19 回复(0)
n = int(input())
l = input().split(" ")
t = False if input() == "0" else True
print(*sorted(l,key = int,reverse=t))

发表于 2023-02-19 15:23:10 回复(0)
n=int(input())
i_list=[int(x) for x in list(input().split())]
k=int(input())
o_list=sorted(i_list,reverse=k)
for i in range(len(o_list)):
    if i<len(o_list)-1:
        print(o_list[i],end=' ')
    else: print(o_list[i])

为啥测试用例不能有最后一个空格。。

发表于 2023-02-01 11:59:07 回复(0)
a = input()
b = input()
c = input()
d = b.split(' ')
d1 = []
for i in d:
    d1.append(int(i))
if c == '0':
    e = sorted(d1, reverse=False)
else:
    e = sorted(d1, reverse=True)
ee = ''
for i in e:
    # print(str(i))
    ee = ee + str(i) + ' '


print(ee)

发表于 2022-12-23 16:55:43 回复(0)
n=int(input())
list1=list(map(int,input().split(" ")))
flag=int(input())
print(" ".join(map(str,sorted(list1,reverse=flag))))

发表于 2022-12-15 10:30:50 回复(0)
a = int(input())
b = list(map(int,input().split()))
c = int(input())
b=sorted(b) #从小到大排序
if c == 0:
    for i in b:
        print(i,end=' ')
else:
    for j in b[::-1]:
        print(j,end=' ')
先利用sorted升序将数组排列好,然后写一个判断,针对不同情况进行排序
发表于 2022-12-10 14:53:12 回复(0)
while True:
    try:
        n = int(input())
        res = list(map(int, input().split()))
        m = int(input())

        if m == 0:
            print(' '.join(map(str, sorted(res))))
        elif m == 1:
            print(' '.join(map(str, sorted(res)[::-1])))
    
    except:
        break

发表于 2022-11-23 18:56:14 回复(0)
#1
a,b,c = int(input()),list(map(int,input().split())),int(input())
print(' '.join(map(str,sorted(b))) if c == 0 else ' '.join(map(str,sorted(b,reverse=True))))

#2
a,b,c = int(input()),list(map(int,input().split())),int(input())
if c == 0:
    print(*sorted(b))
else:
    print(*sorted(b,reverse=True))

发表于 2022-11-08 23:50:43 回复(0)

问题信息

难度:
33条回答 38568浏览

热门推荐

通过挑战的用户

查看代码