解算法题的四个基本思路:

一、阅读完成条件

二、选择数据结构

三、时间复杂度分析

四、判断边界条件

五、继续探索取巧方法

例子解析:

LeeCode 136题:只出现一次的数字

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

解答思路:

一、阅读完成条件:非空整数数组、每个元素出现两次、1个元素出现1次

二、选择数据结构:双for循环、排序+二分法、HashMap

三、时间复杂度分析:双for循环 、排序+二分法 、HashMap 

四、判断边界条件:排序+二分法需要考虑数组的边界问题

五、继续探索取巧方法:异或解法:

int result = nums[0];
if (nums.length > 1) {for (int i = 1; i < nums.length; i++) {result = result ^ nums[i];}}return result;

解算法题的五个基本思路相关推荐

  1. 【精选】JAVA入门算法题(五)

    把敬业变成习惯.短期来看是为了雇主,长期来看是为了自己. 1.题目:重复的字符串 /*** 给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成.给定的字符串只含有小写英文字母,并且长度不超 ...

  2. 一道算法题,看看大家的思路

    题目描述:有31,-41,59,26,-53,58,97,-93,-23,84十个数.SUM(N,M)表示从第N个数到到第M个数的和.例如:SUM(2,3)=-41+59=18.问:最大的和是多少?对 ...

  3. python为什么没有指针_Python 没有指针,如何解算法题?

  4. 刷了 1000 多道算法题,一点小小的心得!

    今天分享一下自己刷算法题目的经验. 首先,要明确你的目标,因为目标不同,刷算法的平台和方法也不同. 常见的目标有以下四种: 学习基本编程语法和思想 想找大厂工作,应对面试 算法竞赛 锻炼自己的思维 大 ...

  5. 【精选】JAVA入门算法题(四)

    把敬业变成习惯.短期来看是为了雇主,长期来看是为了自己. 1.题目:全排列问题 这种问题在算法题中应用很多,主要思路是使用递归来求,求n个数的全排列就是把第一个数固定后求n-1个数的全排列,不断递归到 ...

  6. 《爬楼梯》算法日记 2021.7.22,每天一道算法题,怒刷Leetcode,未做出,看评论思路后得出解。

    """ 70. 爬楼梯 假设你正在爬楼梯.需要 n 阶你才能到达楼顶.每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数. ...

  7. 算法总结---最常用的五大算法(算法题思路)

    算法总结---最常用的五大算法(算法题思路) 一.总结 一句话总结: [明确所求:dijkstra是求点到点的距离,辅助数组就是源点到目标点的数组] [最简实例分析:比如思考dijkstra:假设先只 ...

  8. 面试时算法题的解答思路

    面试中纯粹考算法的问题一般是让很多程序员朋友痛恨的,这里分享下我对于解答算法题的一些思路和技巧. 一般关于算法的文章,都是从经典算法讲起,一种一种算法介绍,见得算法多了,自然就有了感悟,但如此学习花费 ...

  9. LeetCode算法题-Number Complement(Java实现-五种解法)

    这是悦乐书的第240次更新,第253篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第107题(顺位题号是476).给定正整数,输出其补码数.补充策略是翻转其二进制表示的位 ...

最新文章

  1. 【Linux】Linux简单操作之系统管理
  2. UVa1112 - Mice and Maze(Dijkstra和Floyd_warshall)
  3. html页面多个按钮点击事件监听事件,HTML Button.onclick 事件汇总
  4. 从Http它被连接到WebSocket
  5. 基于NFS实现lamp的负载均衡之二: 部署NFS服务器
  6. quartz 任务调试 建表 sql 语句、create table语句
  7. apt get php mysql_Ubuntu10用apt-get配置apache+php+mysql(轉)
  8. 高并发系统的限流算法
  9. TL-WAR308 刷openwrt以及魔改8M固件到16M
  10. 我的计算机无法远程连接桌面,远程桌面无法连接怎么办?windows 无法使用远程桌面连接的解决方法...
  11. javaWeb之Response
  12. 响应式布局的实现方式
  13. 【语音识别】动态时间规整算法(RTW)语音识别系统【含GUI Matlab源码 341期】
  14. LeetCode 33. 搜索旋转排序数组
  15. 金立M2017温情发布,成功的标配值得拥有
  16. html5教程单摆,Flash动画—单摆的制作教程
  17. PrepareStatement概述
  18. 【转】牛仔文化与历史背景
  19. win7下运行linux命令,win7系统32位旗舰版iso运行linux shell脚本的操作办法
  20. 每日英文 November 16, Thursday

热门文章

  1. 会声会影2022旗舰终极版详细功能介绍
  2. 创建采购订单BADI流程
  3. 华为2288hv5服务器安装ESXI 6.7(一):远程访问服务器管理口
  4. 数据科学分布——均匀分布
  5. xml 标签带有符号php,php-如果元素每个记录有相似的标记,则获取正确的xml值
  6. 如果金融男和IT男同时追你,你选谁?
  7. 麦克内马尔检验(McNemar‘s Test)
  8. 【转】unity 的 MonoDevelop 在Windows下显示中文不出现乱码
  9. java爬虫抓取极客时间专栏页面
  10. 编辑器生成静态网页_不使用静态网站生成器的7个理由