算法
LYuanZhuo
这个作者很懒,什么都没留下…
展开
-
如何有效的写算法题
刷 LeetCode 的大局观目前主流的刷题流派有两种,一种【龟系】,一种【兔系】。“龟系”刷法的精髓就是每个题目都做干净。不满足于一种解法,各种解法都写一写。这种流派适合不太急于准备算法面试的小伙伴,追求算法的干净优雅。“兔系”刷法的精髓是暴力,按照标签来刷,使用固定套路来刷。比如小吴之前分析的那道拍案叫绝的算法题,如果告诉你是标签是异或,你马上能 AC 。这都是套路。每个标...转载 2019-04-26 22:34:52 · 242 阅读 · 0 评论 -
经典数组算法题(java实现)
文章目录循环左移右移数组循环左移右移数组要求:循环左移n位,把数组的前n个放到后面,如123456-》345612思路:1 反转前n个数2 反转剩下的length-n个数3 反转整个数组代码: //循环左移k位 public static void moveL(int[] arr,int k){ int n=arr.length; ...原创 2019-05-15 17:07:18 · 661 阅读 · 0 评论 -
十大排序算法(Java实现)
冒泡排序://冒泡排序 public static int[] bubbleSort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) { for (int j = 0; j < arr.length - 1 - i; j++) { if (arr...原创 2019-04-08 11:40:24 · 128 阅读 · 0 评论 -
经典查找算法题(java实现)
二分查找要求:有序数组找目标数位置思路:经典二分思想代码:public static int find(int[] arr,int target,int left,int right){ while(left< right){//注意这里是<= int mid = left+(right-left)/2; ...原创 2019-05-15 16:41:40 · 611 阅读 · 0 评论 -
经典分治算法题(Java实现)
待更新原创 2019-05-01 12:09:01 · 2125 阅读 · 0 评论 -
经典动态规划算法题(Java实现)
待更新原创 2019-05-01 12:08:08 · 7227 阅读 · 0 评论 -
经典字符串算法题(Java实现)
运用递归的思想,需要全排列的字符串是一个字符串,那么它的子字符串也是一个字符串,要全排列该字符串,可以先全排列它的子字符串,直到子字符串长度为1;先固定字符串第p个位置的字符,然后全排列p+1位置到末尾的子字符串,然后更换p位置的字符,直到每个字符都在p位置出现一次。接着p++,p位置往后移动一位,针对新的p位置重复上述操作,直至p指向最后一个字符,这个时候输出当前的字符顺序。(代码有详细注释,好好体会)原创 2019-05-01 12:07:34 · 1257 阅读 · 0 评论 -
经典二叉树算法题(Java实现)
待更新原创 2019-05-01 12:06:33 · 880 阅读 · 0 评论 -
经典链表算法题(Java实现)
待更新原创 2019-05-01 12:05:23 · 1432 阅读 · 0 评论 -
用递归代替循环嵌套算法思想
问题引入:输出2位数字的所有排列组合对于这个问题我们很快可以想出解决方案:for(int i = 0;i<10;i++){ for(int j = 0;j<10;j++){ System.out.println(i+""+j); } }那要是输出3位数字的排列组合呢?你可能会想那就多套一层循...原创 2019-05-08 11:54:16 · 1989 阅读 · 0 评论 -
KMP算法的理解和Java实现
角色:甲:abbaabbaaba乙:abbaaba乙对甲说:「帮忙找一下我在你的哪个位置。」甲从头开始与乙一一比较,发现第 7 个字符不匹配。要是在往常,甲会回退到自己的第 2 个字符,乙则回退到自己的开头,然后两人开始重新比较。这样的事情在字符串王国中每天都在上演:不匹配,回退,不匹配,回退,……但总有一些妖艳字符串要花出自己不少的时间。上了年纪的甲想做出一些改变。于是甲把乙叫走...转载 2019-05-04 15:28:07 · 231 阅读 · 0 评论 -
求topK思路
1 完全排序2 堆排,冒泡排,快排(获取当p的值等于k即求得,有点类似二分)3 优先队列priorityQueue,保存一个k大小的优先队列附上快排思想求topK代码 static int k = 2; static void sort(Integer[] arr,int l,int r){ if (l>r){ return; ...原创 2019-09-16 16:39:50 · 410 阅读 · 0 评论