随机生成二维数组并逐行逐列排序以及查找

当作一个笔记,方便自己后续查找。

#逐行(列)排序
利用sort()函数对某一行(列)排序,比较前后元素的大小关系,如果后一个元素大于前一个元素则替换两者的位置。经过一次循环把最大的元素排到了最后面,重复循环把元素按从小到大的循序排列好。

#查找
查找就比较容易了,遍历数组中所有的元素,发现待查找元素则打印find。

#随机生成二维数组
利用np.random.randint()函数生成随机二维数组,这个函数有4个参数,依次代表随机生成的最小值、最大值、数组的尺寸、数组元素的类型

#程序代码如下:

import numpy as np

def sort(a):
    for j in range(len(a)-1):
        for i in range(len(a)-1-j):
            if a[i+1] < a[i]:
                a[i+1],a[i] = a[i],a[i+1]
                
def find(a,b):
    b == None
    for i in range(len(a[:,0])):
        for j in range(len(a[0])):
            if b == a[i][j]:
                print('find')
            
            
if __name__ == "__main__":
    test = np.random.randint(0,20,(4,5),int)
    for i in range(len(test[:,0])):
        sort(test[i])        
    for j in range(len(test[0])):
        sort(test[:,j])
    print(test)
    find(test,5)

新手小白,希望大家多多指正,也希望自己能坚持下来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值