- 博客(6)
- 收藏
- 关注
原创 二分法
递归实现public int findPosition(int[] nums, int target) { return binarySearch(nums, 0, nums.length - 1, target);}public int binarySearch(int[] nums, int start, int end, int target) { if (start > end) { return -1; } int mid = (start + end) / 2;
2021-03-23 00:13:20
89
原创 常见的时间复杂度
复杂度 算法集 备注 位运算 常数集复杂度 二分法,倍增法,快速幂算法,辗转相除法 枚举法,双指针算法,单调栈算法,KMP算法,Rabin Karp,Manacher's Algorithm 又称作线性复杂度 快速排序,归并排序,堆排序 枚举法,动态规划,Dijkstra 枚举法,动态规划,Floyd 与组合有关的搜索问题 与排列有关的搜索...
2021-03-22 10:46:40
145
原创 排序算法
2021-03-21快速排序算法先整体后局部public int[] sortArray(int[] nums, int start, int end) { if (start >= end) { return nums; } int left = start, right = end; int pivot = nums[(start + end) / 2]; while (left <= right) { while (left <= right
2021-03-22 00:17:43
83
原创 两数之和
nums = [6, 4, 2, 9]target = 10return 4 and 6思路1 暴力解法public int[] twoSum(int[] numbers, int target) { if (numbers == null) { return new int[]{}; } for (int left=0; left<numbers.length; left++) { int right=numbers.length-1; while (left
2021-03-21 23:43:14
117
原创 复杂度理论
概述量化一个算法的时间和空间时间复杂度 基本可以确定是二分法 多项式(Polynomial):一般在底数位置,不在幂次项 // / / 非多项式(Nondeterministic Polynomial) // 小o:最好复杂度 大O:最坏复杂度 只考虑最高项 不考虑常数项和系数 空间复杂度编程复杂度...
2021-03-21 19:13:59
229
原创 String类
在 Java 中,String 是一个类(Class)equals的方法判断两个字符串是否相等 使用 "==" 判断时,指相同的内存地址,只有在内存一样时返回true,即同一个对象实例 使用 "+" 或 "concat" 方法时,会创建一个新的字符串,占用新的内存空间 Python / C++ 中可以直接使用此方法判断是否相等 使用 equals 方法判断时,String类重写了Object类,内存地址或内容一致,返回true,即判断内容 StringBuilder类没有重.
2021-03-21 18:52:13
192
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人