小米面试记录

1、windows32位机器和64位机器上sizeof(int), sizeof(int *), sizeof(void *), sizeof(long), sizeof(long  long)各是多少?

2、C++中虚函数可不可以是private的?为什么?

3、C++类中的static数据成员在哪里初始化?

4、C++类中虚函数的参数能否是模版参数?

5、程序运行时,内存状态如何?

6、二叉排序树,如何找当前结点的后继结点?

7、查找无序正整数数组中是否有两个数的和为给定的整数target?

8、多进程与多线程的区别与联系?

9、把一个石头直接放入足够深的水里,与把一个石头放在浮在水面的船上,哪种情况水位更高?

//7、查找无序正整数数组中是否有两个数的和为给定的整数target?
class Solution {
public:
    vector<int> twoSum(vector<int> &numbers, int target) {
     vector<int> res;
     map<int,int> numbersMap;
     map<int,int>::iterator iter;
     for(int i=0;i<numbers.size();i++)
     {
         iter=numbersMap.find(target-numbers[i]);
         if(iter!=numbersMap.end())
         {
             res.push_back(iter->second);
             res.push_back(i+1);
             break;
         }
         else
         {
             numbersMap[numbers[i]]=i+1;
         }
     }
     return res;
    }
};

  

  

原文地址:https://www.cnblogs.com/Vae1990Silence/p/4506858.html