当前位置: 首页 > 后端技术 > Java

说完stack和queue的区别,面试官当场吐了,同学们一定要引以为戒

时间:2023-04-01 23:59:41 Java

一个满是黄沙的早晨,我准时到达了面试地点。应了前台小姐姐的坏笑,我就在会议室坐下,等着面试官来蹂躏我。不多时,一个戴眼镜的男人推门走了进来,进门后对我说:“你就是万猫吧?”我一看是面试官,不敢大意,站起身来笑着说:“是的,今天是来面试的。”面试官又说:“今天沙尘暴这么大,你还是准时来吧。”我说:你应该。1、开门见山面试官说:“我们开门见山,先说一些基本的问题,栈和队列有什么区别?是什么?”我微微一笑回答道:“首先,我先说一下栈和队列的共同点,它们都是由若干个具有相同数据特性的元素组成的有限序列,也就是所谓的线性表。“限制只在列表的一端插入元素并在另一端删除元素的线性列表。在队列中,允许插入的一端称为尾,允许删除的一端称为前端。队列遵循的原则是先进先出(FirstInFirstOut,FIFO)。栈(stack)是一种线性表,仅限于在表尾进行插入或删除操作。在栈中,表尾有其特殊的含义,称为栈顶(top),相应地,表头称为栈底(bottom)。没有元素的空列表称为空栈。栈遵循后进先出(LastInFirstOut,后进先出,LIFO)的原则。2.抖机智看到面试官满意的笑容,我不禁抖了抖机智:“我刚才说的比较抽象,一直在用例子来理解,不知道能不能解释清楚这里。”面试官点点头说:“当然可以,请告诉我。”我问面试官:“你知道金针菇有个别名吗?”面试官很好奇,问:“真不知道,小名是什么?”我回答说:“金针菇的外号是明天见。为什么起这个外号呢?因为吃了金针菇后不容易消化,第二天香里就有了。比如你的金针菇昨天中午吃的,晚上吃的火龙果。今天的香里先有金针菇,然后是红色的。这就是排队的特点:先进先出。面试官清了清嗓子:“咳咳咳!你这个例子味道有点重。”我没有回答,又问:“你认识九头蛇吗?”面试官说:“我不知道,那是什么?”我回答:“水螅是一种腔肠动物,主要吃鱼和昆虫。喂牛肉屑。关键是它有嘴,没有菊花,它的蝎子是从嘴里吐出来的。”举个例子:九头蛇先吃了一条鱼虫,然后又吃了一些牛肉屑。消化后,先从嘴里吐出牛肉屑,再从嘴里吐出鱼虫。这就是栈的特点:后进先出。面试官用手捂住嘴,身体抽动了几下,脸颊最后一次鼓了起来。几滴白汤从指缝间流了出来。他早餐可能喝了牛奶或豆浆。但是面试官通过了一个大风大浪的人来说,这种小情况已经足够应付了。只见他动了动喉咙,咕噜咽了回去。感谢同学们的一键三连,又帅又美!