当前位置: 首页 > news >正文

一通瞎写居然击败100%【力扣】【498-对角线遍历】【数组-C语言】

题目:力扣-498

给你一个大小为 m x n 的矩阵 mat ,请以对角线遍历的顺序,用一个数组返回这个矩阵中的所有元素。

在这里插入图片描述
代码如下:

int* findDiagonalOrder(int** mat, int matSize, int* matColSize, int* returnSize){int direct[2][2]={{-1,1},{1,-1}};//direct[0]表示从下网上,direc[1]表示从上往下int m=matSize;int n=*matColSize;int *retArr =(int*)malloc(sizeof(int)*m*n);int total = 0;int row=0;int col=0;int directIndex=0;while(total<m*n){retArr[total]=mat[row][col];int nextRow = row + direct[directIndex][0];int nextCol = col + direct[directIndex][1];if(nextRow<0||nextCol>=n||nextRow>=m||nextCol<0){if(nextRow<0&&nextCol<n&&directIndex==0){//上边越界col+=1;}else if(nextCol<0&&nextRow<m&&directIndex==1){//左边越界row+=1;}else if(nextRow<0&&nextCol==n&&directIndex==0){//右上顶角越界row+=1;}else if(nextCol<0&&nextRow==m&&directIndex==1){//左下顶角越界col+=1;}else if(nextRow==m&&nextCol>=0&&directIndex==1){//底部越界col+=1;}else if(nextCol==n&&nextRow>=0&&directIndex==0){//右边越界row+=1;}directIndex=directIndex==0?1:0;}else{row+=direct[directIndex][0];col+=direct[directIndex][1];}total++;}(*returnSize)=m*n;return retArr;
}

在这里插入图片描述
写的时候感觉就是一坨 shi~,结果是我没想到…


http://www.mrgr.cn/news/54537.html

相关文章:

  • 嵌入式Linux:进程如何处理信号
  • [笔记] 关于CreateProcessWithLogonW函数创建进程
  • 了解袜卡产品
  • 7、Nodes.js包管理工具
  • ruoyi域名跳转缓存冲突问题(解决办法修改:session名修改session的JSESSIONID名称)
  • 浅谈数据库选型
  • 文献分享: Vamana图算法以及面向SSD的DiskANN
  • 第五届机器学习与计算机应用国际学术会议(ICMLCA 2024)
  • Leetcode 1926. 迷宫中离入口最近的出口
  • 数据库产品中审计与日志(Auditing and Logging)的功能简介
  • 计算机指令系统,打个结~
  • 【电子电力】三相逆变器下垂控制单机并离网,并网预同步
  • XGO Rider:全球首创双轮足AI机器人,集成ChatGPT,实现智能互动
  • 基于SSM汽车零部件加工系统的设计
  • 28——循环结构之累加应用(配套练习后续更新~~~~~)
  • 使用 F5-TTS 生成指定人物的声音:一步步指南
  • 国产AI模型“Yi-Lightning”逆袭超越GPT-4!
  • 使用函数制作一个简易的计算机
  • Python学习的自我理解和想法(17)
  • 巴西税收政策及主要税收
  • 诺贝尔物理学奖与机器学习、神经网络:一场跨时代的融合与展望
  • 【YOLO目标检测道路破损检测数据集】共665张、已标注txt格式、有训练好的yolov5的模型
  • PPT自动化:掌握 python-pptx 的基础元素
  • iOS -- 代码优化
  • 多IP访问多网段实验
  • 12、论文阅读:SpikeYOLO:高性能低能耗目标检测网络