![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试痛点
眺望灬前方
啊!我的老腰 啊!我的头发
展开
-
利用摩尔投票算法解决LeetCode 169与229题
摩尔投票算法是今天在LeetCode 169(Majority Element)题看到的算法.本篇文章将从本题出发探讨摩尔投票算法,并且利用本算法进而扩展解决LeetCode 229(Majority Element2)题.(本文使用Java编写代码) 一、LeetCode 169(Majority Element)原题介绍: 给定一个大小为n的数组,找到其中出现次数超过元素总个数一半的数(出现次...原创 2019-03-10 23:48:31 · 176 阅读 · 0 评论 -
Java中异或运算符(^)及其运用
今天在LeetCode上刷题时碰到一道题没啥思路,看到大家解题时运用到了异或,所以趁着这个机会复习一下这个知识点吧! 异或运算(^)是以二进制数据为基础进行运算的。也就是说当代码中使用到异或运算时,都会先将两个条件进行转换,转换成二进制数据后,再进行运算。异域中同位如果值相同(都是0或者都是1)则为0,不同(一个是0,一个是1)为1。 在这里我们举个例子: int a=3; int b=8; in...原创 2019-03-07 22:17:42 · 11356 阅读 · 6 评论 -
LeetCode 74与240题:搜索二维矩阵
我们先讨论240题(Search a 2D Matrix II),因为74题(Search a 2D Matrix)可以使用240题的解题思路. 240:Search a 2D Matrix II原题: 原题分析: 对于这道题,如果想在这个矩阵中找到一个特定的数,除了遍历这个矩阵外(暴力解法),因为每行每列的元素都已经按照升序排列,所以很容易想到使用二分法进行査找,但是今天我们使用分治法进行解题...原创 2019-03-11 17:48:37 · 215 阅读 · 0 评论 -
Java的快速排序法代码分步解析
刚开始看快速排序的时候,还是有点懵的,虽然大体意思上算是了解了,但是整体流程还不够清晰,网上已经有很多分析快速排序的博客了,介绍的话不在这里说了,写下这篇博客就是为了以后再看快排的时候可以快速复习。 以下分为两个部分,第一部分为代码部分,第二部分为分步讲解,两部分对比着看。 一 代码区 public class QuickSort { private static int count; /**...原创 2019-05-05 16:13:59 · 156 阅读 · 0 评论 -
LeeCode 977题(java实现):有序数组的平方
杂话: 笨笨的我只想到了平方后进行排序,也了解到冒泡排序是一种低效的排序法,用jdk自带的Arrays.sort()好太多,了解到1.8版本用的是双轴排序,听着就很屌屌的感觉.最后看了其他人对此题的解法,也就是本博客贴出的解法,可以利用了双指针的方法得出此题优解. 贴码: public int[] so...原创 2019-07-01 21:43:20 · 291 阅读 · 0 评论 -
foreach循环中为什么不要进行remove/add操作
先来看一段代码,摘自阿里巴巴的java开发手册 List<String> a = new ArrayList<String>(); a.add("1"); a.add("2"); for (String temp : a) { if("1".equals(temp)){ a.remove(temp); } } 此时执行代码,没有问题,但是需要注...转载 2019-07-14 21:00:28 · 131 阅读 · 0 评论