leetcode/tests/arrays_test.cpp
2024-03-26 19:18:25 +08:00

91 lines
2.0 KiB
C++

//
// Created by yangzuhao on 2024/3/21.
//
#include <gtest/gtest.h>
#include "string_array.h"
TEST(ArrayTest, MergeTwoSortedArraysTest) {
std::vector<int> nums1{4, 0, 0, 0, 0, 0};
int m = 1;
std::vector<int> nums2{1, 2, 3, 5, 6};
int n = 3;
yaha::Array a;
a.merge(nums1, m, nums2, n);
for (int it : nums1) {
std::cout << "val: " << it << std::endl;
}
}
TEST(ArrayTest, RemoveElementTest) {
std::vector<int> nums{3, 2, 2, 3};
int val = 3;
yaha::Array a;
int res = a.remove_element(nums, val);
std::cout << "val: " << val << " , res: " << res << std::endl;
for (int num : nums) {
std::cout << "num: " << num << std::endl;
}
}
TEST(ArrayTest, RemoveDuplicatesTest) {
std::vector nums{0, 0, 1, 1, 1, 1, 2, 3, 3};
yaha::Array a;
int res = a.remove_duplicates(nums);
std::cout << "res: " << res << std::endl;
for (int num : nums) {
std::cout << "num: " << num << std::endl;
}
}
TEST(ArrayTest, RemoveDuplicates2Test) {
std::vector nums{0, 0, 1, 1, 1, 1, 2, 3, 3};
yaha::Array a;
int res = a.remove_duplicates2(nums);
std::cout << "res: " << res << std::endl;
for (int num : nums) {
std::cout << "num: " << num << std::endl;
}
}
TEST(ArrayTest, MajorityElementTest) {
std::vector nums{2, 2, 1, 1, 1, 2, 2};
yaha::Array a;
int res = a.majority_element(nums);
std::cout << "res: " << res << std::endl;
for (int num : nums) {
std::cout << "num: " << num << std::endl;
}
}
TEST(ArrayTest, RotateTest) {
std::vector nums{1, 2, 3, 4, 5, 6, 7};
// std::vector nums{1,2};
int k = 3;
yaha::Array a;
a.rotate(nums, k);
for (int num : nums) {
std::cout << "num: " << num << std::endl;
}
}
TEST(ArrayTest, MaxProfitTest) {
std::vector nums{7, 1, 5, 3, 6, 4};
// std::vector nums{1,2};
// int k = 5;
yaha::Array a;
int res = a.max_profit(nums);
std::cout << "res: " << res << std::endl;
}