zoukankan      html  css  js  c++  java
  • 大众点评面试

      今天早上去大众点评面试,面试官问了一个关于算法的题目,当时脑袋短路,没有回答出来,在地铁上想了想,现在把答案发出来。

    题目大意是这样的:实现一个先进后出的队列,要求能返回最大值,不能用循环。

        public class MyStack
        {
            Stack<int[]> _Stack = new Stack<int[]>();
            int _max = 0;
            public int Max
            {
                get
                {
                    int[] array = _Stack.Peek();
                    return array[1];
                }
            }
            public void Push(int a)
            {
                if (a > _max)
                {
                    _max = a;
                }
                int[] array = new int[] { a, _max };
                _Stack.Push(array);
            }
    
            public int Pop()
            {
                int[] array = _Stack.Pop();
                _max = array[1];
                return array[0];
            }
        }
    

      补充一下,上面没有做任何线程安全方面的控制,只是列出了思路。  

    还有另外一个算法的题目,大意是关于提款的,要求一次性能提出来,面试官举了一个例子:要取出27元,有10块、2块和一块面额,那么就需要取2个十块,2个两块和3个一块,又说到我们不知道面额,只知道颜色什么的,我没有听懂面试官的意思,所以就直接说不会了。

      面试官的人不错,面试过程比较的轻松,不过,我最后挂了。呵呵。

    作者:HOH
    出处:http://hoh.cnblogs.com
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    编译预处理命令define
    共享数据的包含const
    友元类,友元函数
    静态成员static
    this 指针
    构造函数与析构函数
    c++类的基础
    void指针和const指针
    c++基础
    组播的实现
  • 原文地址:https://www.cnblogs.com/HOH/p/4682503.html
Copyright © 2011-2022 走看看