You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python生成指定规律N×N矩阵的算法实现求助

矩阵生成算法

你需要构造的是n阶下双对角矩阵,规则非常明确:

  • 主对角线(行号与列号相等的位置)所有元素为1
  • 主对角线左下方相邻的次对角线(行号 = 列号 + 1的位置)所有元素为-1
  • 其余所有位置元素为0

算法步骤

  1. 初始化一个大小为n×n的全0矩阵
  2. 遍历每一行的索引i(从0开始计数,取值范围为0 ~ n-1):
    • 将第i行第i列的元素赋值为1
    • 如果i > 0(非第一行),将第i行第i-1列的元素赋值为-1

代码实现

1. 纯Python实现(无需第三方库)

def generate_special_matrix(n):
    # 初始化全0矩阵
    matrix = [[0 for _ in range(n)] for _ in range(n)]
    for i in range(n):
        matrix[i][i] = 1
        if i > 0:
            matrix[i][i-1] = -1
    return matrix

2. NumPy实现(适合科学计算场景)

更简洁的写法:

import numpy as np

def generate_special_matrix(n):
    # diag生成对角线矩阵,k=-1表示下偏移1位的次对角线
    return np.diag([1]*n) + np.diag([-1]*(n-1), k=-1)

调用generate_special_matrix(5)即可得到你给出的示例输出。


内容的提问来源于stack exchange,提问作者Serr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 10:24:03