EADST

Python矩阵旋转90度

题目:

请编写一个函数 rotate_matrix_90,将一个 n x n 的二维矩阵顺时针旋转 90 度,并返回旋转后的矩阵。

要求: 1. 原矩阵可以在原地修改,不需要额外的矩阵。 2. 使用 O(1) 的额外空间。

输入示例:

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

输出示例:

[
    [7, 4, 1],
    [8, 5, 2],
    [9, 6, 3]
]

提示: 1. 可以先对矩阵进行转置(行列互换),然后翻转每一行来实现旋转。 2. 该方法适用于 n x n 的矩阵。


解答示例代码:

def rotate_matrix_90(matrix):
    n = len(matrix)
    for i in range(n):
        for j in range(i + 1, n):
            matrix[i][j], matrix[j][i] = matrix[j][i], matrix[i][j]
    for i in range(n):
        matrix[i].reverse()
    return matrix

if name == "main": matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ] result = rotate_matrix_90(matrix) for row in result: print(row)

代码解释:

  1. 转置矩阵:
  2. 使用双重循环。
  3. 对于每对 matrix[i][j]matrix[j][i],交换它们的值。
  4. 这样原地完成了矩阵的转置(行列互换)。

  5. 翻转每一行:

  6. 使用 reverse() 方法翻转每一行,使得矩阵完成 90 度顺时针旋转。

  7. 输入输出:

  8. 输入是一个二维矩阵,直接在原地修改。
  9. 输出时,可以选择直接打印矩阵的内容。

测试结果:

输入:

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

输出:

[7, 4, 1]
[8, 5, 2]
[9, 6, 3]

相关标签
About Me
XD
Goals determine what you are going to be.
Category
标签云
Plotly Pandas icon Datetime Heatmap InvalidArgumentError Image2Text Tracking LeetCode QWEN PyTorch FastAPI PyCharm TSV Magnet Paddle Docker Food Password ResNet-50 Markdown Anaconda Animate BTC News scipy diffusers SAM ONNX OCR Quantization 图形思考法 Clash WebCrawler Pillow Google Git Translation Claude Vim hf Tiktoken Linux Input API Review Jetson RGB Tensor MD5 UI Jupyter JSON Rebuttal VGG-16 多线程 ModelScope LLAMA SQL WAN NameSilo Ubuntu BeautifulSoup PDF 飞书 报税 GPTQ 多进程 Windows NLP LoRA Plate ChatGPT ms-swift Base64 Random Permission 递归学习法 算法题 Bitcoin OpenCV Knowledge mmap Django PDB Diagram 签证 Bert 继承 Agent 公式 Qwen2.5 CV Streamlit TensorRT uwsgi CTC C++ GoogLeNet git Numpy Vmess Python UNIX git-lfs Logo Card Github SVR Crawler FP32 NLTK SQLite Domain tar 第一性原理 Augmentation Interview Cloudreve Proxy torchinfo Paper Quantize Breakpoint transformers VPN 图标 顶会 SPIE LLM 腾讯云 v2ray 论文 财报 Firewall CSV 论文速读 COCO logger Math TensorFlow Freesound CLAP DeepStream FP16 Qwen OpenAI Attention GIT llama.cpp Dataset Safetensors RAR Hilton YOLO Data Bin IndexTTS2 搞笑 强化学习 printf 云服务器 Michelin PIP Algorithm GPT4 Shortcut Color Zip Use TTS Video VSCode BF16 Gemma 域名 Transformers Website Statistics Miniforge 版权 CC FP8 uWSGI 关于博主 Pickle Bipartite FP64 Mixtral Disk 证件照 CEIR HaggingFace Hotel XML FlashAttention XGBoost 音频 Sklearn Hungarian EXCEL CAM Ptyhon Template CUDA Conda Baidu AI RL tqdm Nginx Llama Web LaTeX GGML Qwen2 v0.dev Distillation Land Pytorch DeepSeek Search 阿里云 Excel HuggingFace 净利润
站点统计

本站现有博文332篇,共被浏览875268

本站已经建立2583天!

热门文章
文章归档
回到顶部