题解 | 实现简化行阶梯形(RREF)函数

实现简化行阶梯形(RREF)函数

https://www.nowcoder.com/practice/48380187ac2d412d8defc1e16446744f

import numpy as np

def rref(matrix):
    l=matrix.shape[0]
    for i in range(l):
        piw=i
        while piw<l-1 and abs(matrix[piw][i])<1e-10:
            piw+=1
        if piw==l-1 and abs(matrix[piw][i])<1e-10:
            continue
        matrix[[i,piw]]=matrix[[piw,i]]
        matrix[i]=matrix[i]/matrix[i][i]
        for j in range(l):
            if j!=i:
                matrix[j]-=matrix[j][i]*matrix[i]
    return np.round(matrix,1)


if __name__ == "__main__":
    print(rref(np.array(eval(input()),float)))

全部评论

相关推荐

昨天 14:50
已编辑
门头沟学院 C++
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务