0
点赞
收藏
分享

微信扫一扫

LeetCode刷题day10


算法打卡第十天,今天你刷题了吗

😄😄😄😄😄😄😄😄😄😄

😃😃😃😃😃😃😃😃😃😃

💓💓💓大家一起来刷题!💓💓💓

😍😍😍😍😍😍😍😍😍😍

😘😘😘😘😘😘😘😘😘😘

LeetCode刷题day10_leetcode

​​350. 两个数组的交集 II​​

给定两个数组,编写一个函数来计算它们的交集。

示例 1:

输入:nums1 = [1,2,2,1], nums2 = [2,2]
输出:[2,2]

示例 2:

nums1 = [4,9,5], nums2 = [9,4,9,8,4]
[4,9]

参考代码

#include<bits/stdc++.h>
using namespace std;

vector<int> intersect(vector<int>& nums1, vector<int>& nums2) {
vector<int> nums3;
int i = 0,j = 0;
sort(nums1.begin(),nums1.end());
sort(nums2.begin(),nums2.end());
while(i<nums1.size() && j<nums2.size()){
if(nums1[i]==nums2[j]){
nums3.push_back(nums1[i]);
i++,j++;
}else if(nums1[i]<nums2[j]){
i++;
}else if(nums1[i]>nums2[j]){
j++;
}
}
return nums3;

}

int main()
{
vector<int> nums3;
vector<int> nums1,nums2;
nums1 = {4,9,5};
nums2 = {9,4,9,8,4};
nums3 = intersect(nums1, nums2);
for(int i = 0;i < nums3.size();i++){
cout<<nums3[i]<<" ";
}
return 0;
}

LeetCode刷题day10_职场和发展_02

​​566. 重塑矩阵​​

在 MATLAB 中,有一个非常有用的函数 reshape ,它可以将一个 m x n 矩阵重塑为另一个大小不同(r x c)的新矩阵,但保留其原始数据。

给你一个由二维数组 mat 表示的 m x n 矩阵,以及两个正整数 r 和 c ,分别表示想要的重构的矩阵的行数和列数。

重构后的矩阵需要将原始矩阵的所有元素以相同的 行遍历顺序 填充。

如果具有给定参数的 reshape 操作是可行且合理的,则输出新的重塑矩阵;否则,输出原始矩阵。

思路分析:

二维数组坐标(i,j)和一位数组x的关系 :
(i, j) —> i * n + j

同样地,我们可以将x映射到二维数组的下标:
   i=x / n
{
   j=x % n
以上便是本题的核心.

示例 1:

输入:mat = [[1,2],[3,4]], r = 1, c = 4
输出:[[1,2,3,4]]

示例 2:

输入:mat = [[1,2],[3,4]], r = 2, c = 4
输出:[[1,2],[3,4]]

AC代码

#include<bits/stdc++.h>
using namespace std;

vector<vector<int>> matrixReshape(vector<vector<int>>& mat, int r, int c) {
int m = mat.size();
int n = mat[0].size();
if(m*n!=r*c) {
return mat;
}
p->next = p->next->next;
//vector( size_type num, const TYPE &val );
vector<vector<int>> ans(r,vector<int>(c));
for(int i = 0; i < r*c; i++) {
ans[i/c][i%c] = mat[i/n][i%n];
}
return ans;

}
int main() {
vector<vector<int>> mat = {{1,2},{3,4}};
int r = 1,c = 4;
vector<vector<int>> ans;
ans = matrixReshape( mat,r,c);
for(int i = 0; i < r; i++) {
for(int j = 0; j < c; j++) {
cout<<ans[i][j]<<" ";
}
cout<<endl;
}
return 0;
}

😜😜😜😜😜 大家卷起来! 😝😝😝😝😝

LeetCode刷题day10_算法_03


举报

相关推荐

Day10

day10

牛客真题编程——day10

LeetCode刷题-10

(Day10)String方法

Java Web day10

day10 - 函数基础

0 条评论