基础算法
tugangkai
四海皆为兄弟
展开
-
3Sum Closest
解题思路:这道题和3个数和为指定数很相似,主要是固定一个数,然后计算三数之和,如果和大于指定数,调整右指针向左移动,如果小于指定数,左指针向右移动。过程中记录和指定数相减最小的的和public int threeSumClosest(int[] nums, int target) { Arrays.sort(nums); int diff = Inte原创 2018-01-10 23:59:54 · 139 阅读 · 0 评论 -
leetcode17
问题描述:Given a digit string, return all possible letter combinations that the number could represent.A mapping of digit to letters (just like on the telephone buttons) is given below.Input:Dig原创 2018-01-12 23:13:28 · 217 阅读 · 0 评论 -
八皇后的两种解法
public class EightQueue {private int []x=new int[9];/* * 1.在一列寻找合适的位置,这个位置与前面的所有棋子都不在一条线或者斜线上面 * 2.当寻找到合适的位置的时候后一列寻找位置 * 3.当寻找到一个列n个位置后还没有找到好的位置,那么得回溯,并接着寻找上一列的下个位置 * 4.当回溯到位置0的时候结束。 */原创 2018-01-10 00:00:42 · 300 阅读 · 0 评论 -
kmp算法
如果机房马上要关门了,或者你急着要和MM约会,请直接跳到第六个自然段。 我们这里说的KMP不是拿来放电影的(虽然我很喜欢这个软件),而是一种算法。KMP算法是拿来处理字符串匹配的。换句话说,给你两个字符串,你需要回答,B串是否是A串的子串(A串是否包含B串)。比如,字符串A=”I’m ...转载 2018-04-09 01:21:33 · 232 阅读 · 0 评论 -
基数排序
前言基数排序(radix sort)又称桶排序(bucket sort),相对于常见的比较排序,基数排序是一种分配式排序,即通过将所有数字分配到应在的位置最后再覆盖到原数组完成排序的过程。我在上一篇讲到的计数排序也属于这种排序模式,上一篇结尾处提到了计数排序的稳定性,即排序前和排序后相同的数字相对位置保持不变。今天我们要说的基数排序就要利用到排序稳定性这一点。思考过程 ...转载 2018-08-03 01:24:20 · 111 阅读 · 0 评论 -
Contains Duplicate III Java
Given an array of integers, find out whether there are two distinct indices i and j in the array such that the absolute difference between nums[i] and nums[j] is at most t and the absolute difference ...转载 2018-08-30 23:54:33 · 133 阅读 · 0 评论 -
红黑树的操作算法
概要目录1 红黑树的介绍2 红黑树的应用3 红黑树的时间复杂度和相关证明4 红黑树的基本操作(一) 左旋和右旋5 红黑树的基本操作(二) 添加6 红黑树的基本操作(三) 删除 作者:Sky Wang 于 2013-08-08 ...转载 2018-09-01 09:58:51 · 251 阅读 · 0 评论 -
各种树的特点和区别
BST树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right);...转载 2018-09-15 16:13:53 · 17148 阅读 · 1 评论