
Algorithm
学习算法的积累,和记录
Firewine
这是一个奇妙的世界
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
动态规划笔记
动态规划笔记 一、基本思想 是将带求解的问题分解成若干个子问题,先求子问题,然后子问题的解得到原问题的答案 与分治法的不同的是 : 适用于动态规划求解的问题,经分解得到的问题往往不是互相独立的 动态规划算法适用于解最优化的问题: 找出最优解的性质,并刻画其结构特征 递归定义最优值 以自底向上的方式计算出最优值 而 使用动态规划求解最优解问题,必须满足,最优解的每个局部解也都是最优的 每个动...原创 2020-01-02 16:52:27 · 398 阅读 · 0 评论 -
LeetCode的一道题的个人见解
文章目录 最近也在做LeetCode的题,其中有一道题是删除排序数组中的重复项 里面有一句话说:为什么返回数值是整数,但输出的答案是数组呢? 请注意,输入数组是以“引用”方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。 在我的理解是:在这个方法调用中,内存保存的数组,会被方法中的直接改变,而此引用非引用。 可以看代码 package com.study.simple; impor...原创 2019-02-27 10:46:30 · 580 阅读 · 0 评论 -
算法思想_常见四种
文章目录常用算法思想描述穷举算法思想1. 基本思想2. 步骤3.实例递推算法1. 基本思想2. 步骤3. 实例递归算法1. 基本思想2. 步骤3. 实例1. 分治算法1. 基本思想2. 步骤3. 实例概率算法1. 基本思想2. 步骤3. 实例如果还有时间,将继续更新 常用算法思想描述 穷举算法思想 依赖于计算机的强大计算能力,来计算每一种可能的情况,从而解决问题,穷举法效率不是很高,但是使用以没...原创 2019-05-15 20:42:19 · 850 阅读 · 1 评论 -
数据结构_6种简单概述_java
文章目录数据结构概述1. 数据结构的内容2. 数据结构的分类3. 数据的结构的存储方式4. 数据类型5. 常用的数据结构结构顺序表结构链表结构栈结构队列结构树结构1. 二叉树图结构1. 什么是图结构 以及 六种 结构的 初始化和遍历 等代码展示原创 2019-05-15 12:31:34 · 350 阅读 · 0 评论 -
算法排序2-基本排序对比
文章目录2. 索引对比框图1.排序2. 优先队列工具类1. less ,exch 等方法实现 2. 索引对比框图 1.排序 算法官网 提供的代码,和 书本中的对比 算法名称 代码 原地排序 稳定 最好 平均 最坏 选择排序 Selection.java ✔ ½ n 2 ½ n 2 ½ n 2 插入排序 Insertion.java ✔ ✔ n ¼ n 2 ½ n 2 冒...原创 2019-02-26 10:56:59 · 211 阅读 · 0 评论 -
算法排序2-基本排序方法2
文章目录5. 快速排序6. 优先队列1. API2. 堆1. 堆的定义2. 一些特殊的代码实现 上一章 5. 快速排序 快速排序是实现简单,使用于各种不同的输入数据且在一般应用中比其他排序算法都要快的多, 快速排序也是一种分治的排序算法, 在快速排序,,,你可以使用很多的辅助的方法,去实行快速排 原地切分 别越界 保持随机性 终止循环 处理切分元素值有重复的情况 终止递归 但是 如果主键是...原创 2019-02-26 10:31:44 · 213 阅读 · 0 评论 -
算法排序2-基本排序方法1
文章目录1. 排序1. 选择排序2. 插入排序3. 希尔排序4. 归并排序 1. 排序 下面的代码基本都是使用Comparable 接口,使用这个接口实现了主键的抽象,它给出了实现这个接口数据类型的对象的大小顺序的定义。 但是,不是每次都要使用这个接口,因为数组元素的主键很可能只是每个元素的一小部分 1. 选择排序 概念:首先找到数组中最小的元素,其次,将它和数组的第一个元素交换位置(如果第一...原创 2019-02-26 10:27:44 · 274 阅读 · 0 评论 -
算法开头1--数据结构(数组和链表)
文章目录1. 基础-==区分数组和链表==1. 更常用的数据结构了`栈,链表,包`1. 栈2. 队列3. 背包 1. 基础-区分数组和链表 对数组和链表的优缺点 数据结构 优点 缺点 数组 通过索引可以直接访问任意元素 在初始化就需要知道元素的数量 链表 使用的空间大小和元素数量成正比 需要通过引用访问任意元素 对于常用的数据结构的举例 数据结构 抽象数据类...原创 2019-02-23 16:12:02 · 8241 阅读 · 1 评论