美文网首页
面经---CloudIn(云英)

面经---CloudIn(云英)

作者: 克洛诺斯 | 来源:发表于2017-01-11 17:49 被阅读196次
    1.将数组从小到大输出

    面试官描述为:有一个数组,前部分(注意并未说前半部分)非递减,后部分非递增,要求将该数组从小到大输出,时间复杂度O(n),空间复杂度O(1)。
    当时我的思路是排序后顺序输出,但是只能做到时间复杂的O(nlogn)。面试完Google并没有找到该题目。

    2.将二维正方形矩阵从右上角沿对角线输出

    输入为非负整数N,该数等于右上角数值,即为矩阵边长。
    我当时的想法是沿对角线一行一行输出,输出为单独的函数,给它起始、结束位置即可,面试完后发现是错的,起始、结束位置的公式写错了。如下是正确解法
    vector<int> arrayPrint(vector<vector<int> > arr, int n) { vector<int> result; int row = 0, col = n-1; while(row < n) { int i = row, j = col; while(j<n && i<n) { result.push_back(arr[i][j]); i++; j++; } if(j == n && i < n) col--; if(i == n) row++; } return result; }

    3. C++基础
    1. int (*s[10]) (int)

    s为指针数组,其中的每一个元素为参数为int,返回值为int的函数指针。

    2. C++是类型安全的吗

    不是。因为C++中0可以代表bool类型变量中的false,非0可代表true

    然后,后来还问了些最近有没有做一些什么项目之类的,目测跪了,发挥的太糟糕了。

    相关文章

      网友评论

          本文标题:面经---CloudIn(云英)

          本文链接:https://www.haomeiwen.com/subject/jfyxlttx.html