算法刷题
+++allen+++
路总是走出来的
展开
-
数组练习之主要元素
数组中占比超过一半的元素称之为主要元素。给定一个整数数组,找到它的主要元素。若没有,返回-1。 示例 1: 输入:[1,2,5,9,5,9,5,5,5] 输出:5 示例 2: 输入:[3,2] 输出:-1 示例 3: 输入:[2,2,1,1,1,2,2] 输出:2 解法:通过分析题目可以发现,超过半数的元素,肯定只会存在一个元素(受数组长度的限制),于是可以设置一个major用于保存当前遍历的元素,一个cnt用于判断,一旦出现与当前元素(major)不一样的元素,则cnt–;原创 2020-12-22 22:54:07 · 328 阅读 · 0 评论 -
数组练习之矩阵转置
给定一个矩阵 A, 返回 A 的转置矩阵。矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。(本题出自leetcode第867题) 示例 1: 输入:[[1,2,3],[4,5,6],[7,8,9]] 输出:[[1,4,7],[2,5,8],[3,6,9]]、 示例 2: 输入:[[1,2,3],[4,5,6]] 输出:[[1,4],[2,5],[3,6]] 解法:矩阵转置的思想:将原数组的行转化为列,原数组的列转化为行。通过i,j控制行和列,所以新建一个数组newA,原数组为A,只需要遍历原素原创 2020-12-22 17:11:25 · 356 阅读 · 0 评论