acwing-二分查找
acwing-二分查找
123456789101112131415161718192021class Solution{ public int binarySearch(int[] arr, int k){ //定义指针 int left = 0; int right = arr.length - 1; middle = 0; while(left < right){ middle = (left + right)/2; if(arr[middle] < k){ right = middle - 1; }else if(arr[middle] > k){ left = middle + 1; }else{ return ar ...
小霸王面经分享
架构班目前我学了【1-13和大数据03,04】内容:http://note.youdao.com/s/dxE3UxWN;
架构班学习上建议跟着老师的大纲一步一步学习,因为跳着看后人的心会浮躁起来,比如前面电商项目一和微服务源码很多视频都几个小时,跳看后回头在补时效率就很低了。
本次跳槽主要是想验证一下自己这半年多的学习成果,平时学习时间安排 早上5-9点左右看老师视频,在公司上午复习下之前学的技术栈,主要通过自己的笔记和图来回顾,下午忙完领导安排活后实战和整理笔记,周末全天;知识点上是否吃透可以通过找会的人让他考考你或者跟不会的人能讲明白这个技术点或老师的代码都能自己手撸出来;
面试前半个月找石杉老师指导一下简历上技术栈和项目(这个很重要不然简历根本没有吸引力),按照简历技术栈来复习自己的知识体系(主要看自己平时自己做的笔记同时也沉淀自我笔记),项目上找架构班大佬虐两到三次项目细节;
一:面试了哪些公司?
百度 美团 京东 滴滴 小米 爱奇艺 58集团 新浪 好未来 boss 猿辅导
拿到了哪些公司的offer: 百度 美团 京东 滴滴 小米 爱奇艺 58集团 好未来 boss直 ...
leetcode-39.组合总和
leetcode-39. 组合总和
原始思路
123456789101112131415161718192021222324252627282930313233class Solution { List<List<Integer>> result = new ArrayList<>(); List<Integer> tmp = new ArrayList<>(); int total = 0; public List<List<Integer>> combinationSum(int[] candidates, int target) { Arrays.sort(candidates); dfs(0, candidates, target); return result; } public boolean dfs(int k, int[] candidates, int target){ ...
acwing-787.归并排序
acwing-787.归并排序
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556import java.util.*;class Main{ public static void main(String[] args){ Scanner in = new Scanner(System.in); int n = in.nextInt(); int[] arr = new int[n]; for(int i = 0; i < n; i++){ arr[i] = in.nextInt(); } //进行排序 sort(arr, 0, arr.length - 1); for(int i = 0; i < n; i++ ...
leetcode-77.组合
leetcode-77. 组合
1234567891011121314151617181920212223242526class Solution{ List<List<Integer>> result = new ArrayList<>(); List<Integer> list = new ArrayList<>(); public List<List<Integer>> combine(int n, int k){ dfs(1, n, k); return result; } // 使用DFS加回溯的思路 public void dfs(int cur, int n, int k){ if((list.size() + n - cur + 1) < k){ return; } if( ...
acwing-785.快速排序
acwing-785.快速排序
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455import java.io.*;import java.lang.*;Class Main{ //快排 public static void quickSort(int[] arr, int left, int right){ if(left >= right){ return; } int middle = arr[left + (right - left)/2]; // -1 和 +1 是为了扩一位 int l = left - 1; int r = right + 1; while(l < r){ do{ ...
leetcode-1560圆形赛道上经过次数最多的扇区
1560. 圆形赛道上经过次数最多的扇区
原始思路
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364class Solution { public List<Integer> mostVisited(int n, int[] rounds) { return mostVisit(n, rounds); } public List<Integer> mostVisit(int n, int[] rounds){ //存放每个数字被经过的次数 HashMap<Integer, Integer> map = new HashMap<>(); int[] arr = new int[n]; int[] result = new int ...
leetcode-347.前K个高频元素
leetcode-347. 前 K 个高频元素
原始思路
1234567891011121314151617181920212223242526272829303132class Solution { public int[] topKFrequent(int[] nums, int k) { // 申请一个map Map<Integer, Integer> map = new HashMap<>(); for (int i = 0; i < nums.length ; i++) { if (map.containsKey(nums[i])){ map.put(nums[i], map.get(nums[i]) + 1); }else { map.put(nums[i], 1); } } ...
leetcode-236.二叉树的最近公共祖先
leetcode-236. 二叉树的最近公共祖先
原始思路
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950class Solution { public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) { ArrayList<TreeNode> listP = new ArrayList<>(); ArrayList<TreeNode> listQ = new ArrayList<>(); findNode(root, p, listP); findNode(root, q, listQ); //数组倒序遍历,最近的公共数字就是最近公共祖先 for(int i = listP.size() -1; i > ...
leetcode-60.第k个排列
leetcode-60.第k个排列
思路解析
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455public class Solution { public String getPermutation(int n, int k) { Set<Integer> set = new HashSet<>(); AtomicInteger atomic = new AtomicInteger(k); StringBuffer sb = new StringBuffer(); for (int i = 1; i <= n; i++) { sb.append(getIndexNum(n, atomic, i, set)); } return sb.toString(); ...