2道题,60分钟,比较简单

1.给一串包含字母和数字的字符串,从中找到第二大的数字,如果没有第二大的数字,则返回-1

  public static int secondHighest (String s) {int maxNum = -1;int secNum = -1;for(int i=0;i<s.length();i++){char c = s.charAt(i);if(c>='0'&&c<='9'){String strC = String.valueOf(c);int numC = Integer.valueOf(strC);if(numC>maxNum){secNum = maxNum;maxNum = numC;}else if(numC<maxNum && numC>secNum){secNum = numC;}}}return secNum;}

2.leetcode165原题

给你两个版本号 version1 和 version2 ,请你比较它们。

版本号由一个或多个修订号组成,各修订号由一个 '.' 连接。每个修订号由 多位数字 组成,可能包含 前导零 。每个版本号至少包含一个字符。修订号从左到右编号,下标从 0 开始,最左边的修订号下标为 0 ,下一个修订号下标为 1 ,以此类推。例如,2.5.33 和 0.1 都是有效的版本号。

比较版本号时,请按从左到右的顺序依次比较它们的修订号。比较修订号时,只需比较 忽略任何前导零后的整数值 。也就是说,修订号 1 和修订号 001 相等 。如果版本号没有指定某个下标处的修订号,则该修订号视为 0 。例如,版本 1.0 小于版本 1.1 ,因为它们下标为 0 的修订号相同,而下标为 1 的修订号分别为 0 和 1 ,0 < 1 。

返回规则如下:

如果 version1 > version2 返回 1,
如果 version1 < version2 返回 -1,
除此之外返回 0。

  public static int compareVersion (String version1, String version2) {String[] v1 = version1.split("\\.");String[] v2 = version2.split("\\.");int index1 = 0;int index2 = 0;while (index1<v1.length && index2<v2.length){String numStr1 = "";int num1 = 0;if(v1[index1].length()==0) num1 = 0;if(v1[index1].length()>1){boolean all0 = true;for(int i=0;i<v1[index1].length();){if(all0){while (i<v1[index1].length()&&v1[index1].charAt(i)=='0') {i++;}}if(i>=v1[index1].length()){num1=0;break;}all0 = false;numStr1 += v1[index1].charAt(i);i++;}if(numStr1.length()==0) num1=0;else num1 = Integer.parseInt(numStr1);}else if(v1[index1].length()>0){num1 = Integer.parseInt(v1[index1]);}String numStr2 = "";int num2 = 0;if(v2[index2].length()==0) num2 = 0;if(v2[index2].length()>1){boolean all0 = true;for(int i=0;i<v2[index2].length();){if(all0){while (i<v2[index2].length()&&v2[index2].charAt(i)=='0'){i++;}}if(i>=v2[index2].length()){num2=0;break;}all0 = false;numStr2 += v2[index2].charAt(i);i++;}if(numStr2.length()==0) num2=0;else num2 = Integer.parseInt(numStr2);}else if(v2[index2].length()>0){num2 = Integer.parseInt(v2[index2]);}if(num1>num2)return 1;else if(num1<num2)return -1;index1++;index2++;}if(index1<v1.length) {while (index1<v1.length){for(int i=0;i<v1[index1].length();i++){if(v1[index1].charAt(i)!='0') return 1;}index1++;}}if(index2<v2.length) {while (index2<v2.length){for(int i=0;i<v2[index2].length();i++){if(v2[index2].charAt(i)!='0') return -1;}index2++;}}return 0;
}

涂鸦智能2021秋招笔试编程题相关推荐

  1. 美团点评2017秋招笔试编程题

    美团点评2017秋招笔试编程题 1, 大富翁游戏,玩家根据骰子的点数决定走的步数,即骰子点数为1时可以走一步,点数为2时可以走两步,点数为n时可以走n步.求玩家走到第n步(n<=骰子最大点数且是 ...

  2. 【新华三】H3C 秋招 笔试编程题

    点击上方蓝字关注我,我们一起学编程 欢迎小伙伴们分享.转载.私信.赞赏. H3C 笔试编程题. 微信搜索:编程笔记本 微信搜索:编程笔记本 微信搜索:编程笔记本 1. 星期匹配 题目描述: 输入一个字 ...

  3. Java——快手2020校园招聘秋招笔试--[编程题]运动会

    题目: 一年一度的快手运动会又要开始了,同学们终于有一天可以离开鼠标键盘显示器,全身心的投入到各种体育项目中.UED设计师小红虽然没有参加体育项目,但她的责任重大,因为她是拉拉队的队长,她需要在每个项 ...

  4. 腾讯2017秋招笔试编程题--游戏任务标记

    游戏里面有很多各式各样的任务,其中有一种任务玩家只能做一次,这类任务一共有1024个,任务ID范围[1,1024].请用32个unsigned int类型来记录着1024个任务是否已经完成.初始状态都 ...

  5. Java——快手2020校园招聘秋招笔试[编程题]质因数统计

    题目: 我们知道每一个大于1的整数都一定是质数或者可以用质数的乘积来表示,如10=2*5.现在请设计一个程序,对于给定的一个(1,N] 之间的正整数(N取值不超过10万),你需要统计(1,N] 之间所 ...

  6. 美团2021秋招笔试算法题

    1.小美最近迷上了22这个数字,一天,她发现他的一本书中有一个神秘的大数字.于是她想知道这个数字中有多少子串代表的数字能被22整除. 2.小美所在的城市有很多地铁站,地铁站之间由线路直接连接,组成了一 ...

  7. 滴滴出行2017秋招笔试真题-编程题汇总_Java实现

    滴滴出行2017秋招笔试真题-编程题汇总_Java实现 注:有的题参考别人的思路,用我最容易理解的代码编的程序,所以可以不能最优的解法,后续我会进行更新,只是一个思路,我的笔记而已,所以不喜勿喷~~~ ...

  8. 【笔试题】京东2017秋招笔试真题

    笔试题 京东2017秋招笔试真题 1.进制均值 时间限制 C/C++语言 1000MS;其他语言 3000MS 内存限制 C/C++语言 65536KB;其他语言 589824KB 题目描述 尽管是一 ...

  9. 腾讯2019秋招笔试真题

    1.小Q爬塔 描述:小Q正在攀登一座宝塔,这座塔很特别,塔总共有n曾层,但是没两层之间的净高却不相同,所以造成了小Q爬过每层的时间也不同.如果某一层的高度为x,那么爬过这一层锁需的还是件也是x.小Q孩 ...

最新文章

  1. elasticsearch _field_stats 源码分析
  2. boost::coroutine2模块实现相同的边缘的测试程序
  3. sublime xdebug调试php
  4. django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).
  5. Hyhyhy – 专业的 HTML5 演示文稿工具
  6. matlab画线不同颜色_怎样画线框图才有意义?
  7. 服务器部署 配置jetty运行参数_Zookeeper+websocket实现对分布式服务器的实时监控...
  8. Luogu P3521 [POI2011]ROT-Tree Rotations
  9. Python《通过解析http请求搞定动态加载,爬取toutiao图片》
  10. Java 容器之 Connection栈队列及一些常用
  11. 百面机器学习——svm基尼系数寻找最优划分
  12. robocopy复制文件_Windows Robocopy命令教程以及以安全方式复制文件的示例
  13. 社区计算机考试内容,社区工作人员计算机考试大纲
  14. Python -- 7. 函数
  15. swagger工具编写接口文档
  16. 《动手学深度学习》学习之路01-- Kaggle⽐赛:房价预测
  17. 万字长文带你解读Linux
  18. 最全的静态网站生成器(开源项目)
  19. Unity/Animator -- 创建Animator Controller
  20. Blueprint介绍和使用

热门文章

  1. ubuntu10.04.04在windows下采用WUBI安装(nvidia显卡GeForce 405),附带中文输入法安装
  2. 2020春招:华信咨询设计院 互联网信息技术工程师
  3. TiDB DM 2.0 GA,数据迁移不用愁
  4. 图片base64,file,blob格式的相互转换,以及gif转base64
  5. Android实现屏蔽微信拉黑和删除联系人功能
  6. 小学计算机教案 插入艺术字,小学信息技术教案新部编本《插入艺术字和图片》.doc...
  7. C语法关于数组的运用
  8. 1.ftp 数据采集模块
  9. 基于SaaS的呼叫中心应用思考
  10. 论文A Thorough Examination of the CNN/Daily Mail Reading Comprehension Task.源码运行