91 lines
2.0 KiB
C++
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;
|
|
}
|