面试题 03.06. 动物收容所

思路:队列,记录猫和狗,all记录当前最老的是猫还是狗

class AnimalShelf {
public:queue<vector<int> > cat, dog;vector<int> all;AnimalShelf() {while (!cat.empty()) cat.pop();while (!dog.empty()) dog.pop();all.clear();}void enqueue(vector<int> animal) {if(animal[1]==0) {cat.push(animal);all.push_back(0);}else {dog.push(animal);all.push_back(1);}}vector<int> dequeueAny() {if(all.size()==0) return {-1,-1};if(all[0]==0) return dequeueCat();return dequeueDog();}vector<int> dequeueDog() {if(dog.size()==0) return {-1,-1};for(int i=0;i<all.size();i++){if(all[i]==1){all.erase(all.begin()+i);break;}}vector<int> res = dog.front();dog.pop();return res;}vector<int> dequeueCat() {if(cat.size()==0) return {-1,-1};for(int i=0;i<all.size();i++){if(all[i]==0){all.erase(all.begin()+i);break;}}vector<int> res = cat.front();cat.pop();return res;}
};

面试题 03.06. 动物收容所相关推荐

  1. 【程序员面试金典】面试题 03.06. 动物收容所

    [程序员面试金典]面试题 03.06. 动物收容所 题目描述 解题思路 题目描述 描述:动物收容所.有家动物收容所只收容狗与猫,且严格遵守"先进先出"的原则.在收养该收容所的动物时 ...

  2. 《程序员面试金典(第6版)》面试题 03.06. 动物收容所

    题目描述 动物收容所.有家动物收容所只收容狗与猫,且严格遵守"先进先出"的原则.在收养该收容所的动物时,收养人只能收养所有动物中"最老"(由其进入收容所的时间长 ...

  3. 程序员面试金典适合java么,程序员面试金典(java版)

    一.字符串,数组 1.1 确定字符互异 分析:采用了最基本的方法,可以改进的思路. 代码如下: public class Different { public boolean checkDiffere ...

  4. 程序员面试金典 - 面试题 03.06. 动物收容所(队列)

    1. 题目 动物收容所.有家动物收容所只收容狗与猫,且严格遵守"先进先出"的原则. 在收养该收容所的动物时,收养人只能收养所有动物中"最老"(由其进入收容所的时 ...

  5. LeetCode《程序员面试金典》面试题 03.06. 动物收容所

    LeetCode 面试题 03.06. 动物收容所 题目 解题 解题一 解题二 解题三 题目 "最老"可以用编号来比较,编号越小,代表越老,题目已经给了动物编号,如果没有需要自己创 ...

  6. 程序员面试金典(第 6 版)(简单篇)

    程序员面试金典 第6版 简单篇 简单篇 面试题 01.01. 判定字符是否唯一 面试题 01.02. 判定是否互为字符重排 面试题 01.03. URL化 面试题 01.04. 回文排列 面试题 01 ...

  7. C#LeetCode刷题-程序员面试金典

    本文由 比特飞 原创发布,欢迎大家踊跃转载. 转载请注明本文地址:C#LeetCode刷题-程序员面试金典 | .Net中文网. C#LEETCODE刷题概述 概述 所有LeetCode程序员面试金典 ...

  8. 《程序员面试金典(第6版)》面试题 16.13. 平分正方形(直线的斜截式方程,C++)

    题目描述 给定两个正方形及一个二维平面.请找出将这两个正方形分割成两半的一条直线.假设正方形顶边和底边与 x 轴平行. 每个正方形的数据square包含3个数值,正方形的左下顶点坐标[X,Y] = [ ...

  9. 程序员面试金典(第6版)

    程序员面试金典 1 数组与字符串 1 数组与字符串 01.01. 判断字符是否唯一 01.02. 判定是否互为字符重排 01.03. URL化 01.04. 回文排列 01.05. 一次编辑 01.0 ...

  10. 程序员面试金典——番外篇之约瑟夫问题2

    程序员面试金典--番外篇之约瑟夫问题2 参考网址:https://www.nowcoder.com/profile/9270572/codeBookDetail?submissionId=157791 ...

最新文章

  1. 如何使用OpenCV自动校正文本图像
  2. linux 安装 apache+mysql+php
  3. [原创] SQLite数据库使用清单(上)
  4. 好看的粉色树洞表白墙网站源码
  5. 安卓应用安全指南 4.10 使用通知
  6. mysql5.095下载_战舰世界095版本
  7. touch事件的分发和消费机制
  8. 数据库设计(三)——数据库设计规范
  9. tushare复权数据使用
  10. 3GPP 3GPP2等协议文档下载网址汇总
  11. 最详细、最全面的【Java日志框架】介绍,建议收藏,包含JUL、log4j、logback、log4j2等所有主流框架
  12. LAMP部署phpadmin
  13. Lambda 表达式详解
  14. 名片 - 名片设计的比例
  15. shell脚本IFS的概念
  16. python 基础代谢率计算_计算基础代谢率(BMR)
  17. 软件测试(开发)工程师的核心竞争力是什么?
  18. 王维:送綦毋潜落第还乡
  19. 解决某个程序、游戏无声音
  20. javaScript基础学习 - 14 - JavaScript内置对象 -案例代码

热门文章

  1. SpringCloud工作笔记037---spring cloud-zuul的Filter详解
  2. System学习笔记006---Windows退出telnet 命令的正确姿势
  3. 云计算学习笔记002---云计算的理解及介绍,google云计算平台实现原理
  4. java整理软件--- Java OCR 图像智能字符识别技术,可识别中文,但是验证码不可以识别...已测识别中文效果很好
  5. Oracle数据库异常--- oracle_10g_登录em后,提示java.lang.Exception_Exception_in_sending_Request__null或Connection
  6. 2014年0417的工作计划
  7. VS2010下配置使用OpenGL的glut库
  8. static变量和static函数的用法摘抄
  9. 回字有四样写法之引号编码
  10. 随想录(内核模块的测试方法)