算法
文章平均质量分 62
Init1al-Z
编程小白
展开
-
排序算法之归并排序MergeSort
排序算法之归并排序归并排序的主要思想为:分治法即将问题分解为本质相同的若干个分问题,通过对分问题的求解,达到对总问题求解的目的。中间会用到编程中的一个重要思想—递归思想。现在假设给定一个无序的长度为n的数组我们可以取数组的中间值mid然后我们可以得到两个数组,那么相似的,我们也可以把对这两个数组排序的问题看做同对原数组排序一样的分问题。假定我们已经利用递归思想对上述两个数组完成了...原创 2018-09-19 20:04:51 · 418 阅读 · 1 评论 -
数据结构与算法之并查集
引言并查集(Union-Find)是一种高效的数据结构,主要的操作有:合并(Union)查找(Find)路径压缩(可选)其中最基本的便是合并与查找合并为方便叙述,把所有元素视作点,元素之间的关系视作线,存在联系便存在关系(需要注意的是,这里的关系应当是1.自反的,2.对称的,3.传递的)自反:x与x存在关系对称:若x与y存在关系,则y与x也存在关系传递:若x与y存在关...原创 2018-11-24 17:30:41 · 537 阅读 · 0 评论 -
排序算法之快速排序QuickSort
快速排序分为两步:1)分割,2)分别对分割所得两部分进行快速排序所以重点在于partittion(),下面是java实现import java.util.Scanner;public class Main { public static void main(String[] args){ Scanner cin = new Scanner(System.in);...原创 2019-03-01 23:43:39 · 233 阅读 · 0 评论 -
LeetCode 337 打家劫舍III
初始版本,会超时/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution {...原创 2019-03-03 11:32:05 · 195 阅读 · 0 评论 -
java 全排列
public class Main { private static int ans; public static void main(String[] args) { int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9}; ans = 0; f(arr, 0); System.out.pri...原创 2019-03-16 16:29:46 · 159 阅读 · 0 评论 -
拦截导弹 动态规划 LDS
LDS<最长下降子序列>定义Longest Decreasing SubsequenceGiven an array of N integers, find the length of the longest subsequence of a given sequence such that all elements of the subsequence are sorted ...原创 2019-03-17 21:11:53 · 306 阅读 · 0 评论