当前位置:网站首页>华为MindSpore开源实习机试题
华为MindSpore开源实习机试题
2022-07-02 06:19:00 【沙子是沙子】
浅浅记录下华为MindSpore开源实习机试题目,三道题。
整体来看不算太难。难点是输入输出别扭,不知道是有意为之还是其他原因。
第一道题:请参考此题剑指 Offer 39. 数组中出现次数超过一半的数字
数组中出现超过次数超过一半的数字(哈希)


题解:
//
// Created by zhanghao on 2022/6/2.
//
#include <iostream>
#include <vector>
#include <string>
#include <unordered_map>
using namespace std;
int countNum(vector<int> & nums){
int ans = 0;
int n = nums.size();
unordered_map<int,int> mymap(n);
for(int i = 0 ; i < n; i++){
mymap[nums[i]]++;
}
for(int i = 0 ; i < n;i++){
if(mymap[nums[i]] > n/2){
ans = nums[i];
break;
}
}
return ans;
}
int main(){
vector<int> nums;
int num;
string s;
cin >> s;
for(auto i : s){
if(i >= '0' && i <= '9'){
nums.push_back((i-'0'));
}
}
int ans = countNum(nums);
cout<<ans<<endl;
return 0;
}第二道题:请参考此题14. 最长公共前缀
题解:
//
// Created by zhanghao on 2022/6/2.
//
#include <iostream>
#include <vector>
#include <string>
using namespace std;
string longest(const string& str1, const string& str2) {
int length = min(str1.size(), str2.size());
int index = 0;
while (index < length && str1[index] == str2[index]) {
++index;
}
return str1.substr(0, index);
}
string longestCommonPrefix(vector<string>& strs) {
if (!strs.size()) {
return "";
}
string prefix = strs[0];
int count = strs.size();
for (int i = 1; i < count; ++i) {
prefix = longest(prefix, strs[i]);
if (!prefix.size()) {
break;
}
}
return prefix;
}
int main()
{
// please define the C++ input here. For example: int a,b; cin>>a>>b;;
// please finish the function body here.
// please define the C++ output here. For example:cout<<____<<endl;
string s;
vector<string> arr;
cin >> s;
int n = s.size();
for(int i = 0 ; i < n;i++){
if(s[i] == '"'){
int left = ++i;
int n = 0;
while(s[i]!='"'){
n++;
i++;
}
string temp = s.substr(left,n);
arr.push_back(temp);
}
}
string ans = longestCommonPrefix(arr);
cout<<ans<<endl;
return 0;
}
第三题:请参考此题96. 不同的二叉搜索树

题解:
#include <iostream>
#include <vector>
using namespace std;
int numTree(int n){
vector<int> dp(n+1);
dp[0] = 1;
for(int i = 1;i <= n;i++){
for(int j = 0; j <= i-1;j++){
dp[i] += dp[j]*dp[(i-1)-j];
}
}
return dp[n];
}
int main(){
int n;
cin >> n;
int ans = numTree(n);
cout<<ans<<endl;
return 0;
}边栏推荐
- VRRP之监视上行链路
- IPv6 experiment and summary
- I/o multiplexing & event driven yyds dry inventory
- Redis——Cluster数据分布算法&哈希槽
- ShardingSphere-JDBC篇
- LeetCode 78. subset
- Compte à rebours de 3 jours pour l'inscription à l'accélérateur de démarrage Google Sea, Guide de démarrage collecté à l'avance!
- Summary of WLAN related knowledge points
- Detailed explanation of BGP message
- 实习生跑路留了一个大坑,搞出2个线上问题,我被坑惨了
猜你喜欢

Monitoring uplink of VRRP

Google play academy team PK competition, official start!

锐捷EBGP 配置案例

LeetCode 90. Subset II

深入了解JUC并发(二)并发理论

Data playback partner rviz+plotjuggler

From design delivery to development, easy and efficient!

日志(常用的日志框架)

Leverage Google cloud infrastructure and landing area to build enterprise level cloud native excellent operation capability

Invalid operation: Load into table ‘sources_ orderdata‘ failed. Check ‘stl_ load_ errors‘ system table
随机推荐
深入学习JVM底层(五):类加载机制
Cglib代理-代码增强测试
Common means of modeling: combination
Sudo right raising
Sentinel规则持久化到Nacos
Don't use the new WP collection. Don't use WordPress collection without update
Frequently asked questions about jetpack compose and material you
IDEA公布全新默认UI,太清爽了(内含申请链接)
LeetCode 83. Delete duplicate elements in the sorting linked list
The real definition of open source software
WLAN相关知识点总结
栈(线性结构)
BGP 路由優選規則和通告原則
CUDA中的函数执行空间说明符
注解和反射详解以及运用
Use of Arduino wire Library
标签属性disabled selected checked等布尔类型赋值不生效?
BGP报文详细解释
亚马逊aws数据湖工作之坑1
LeetCode 283. 移动零