自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 分治法求两个有序数组的中位数(LeedCode4)

分治法求两个有序数组的中位数算法步骤(基本原理是获取第k小的数) 先取两个中间索引x_mid,y_mid; 下面来比较 如果x[x_mid]比较小,那么就看x_mid最大是第几小(记作m) ①m<k; 则把x_mid及以前的全部删除,同时变换k的值 同时如果也要把y_mid及右边的尽可能的删除 ②如果m==k 则把x_mid以前的全部删除并且保留x_mid 同时如果也要把y_mid及右边的尽可能的删除 同理如果y大也一样

2020-05-31 22:12:54 1717 3

原创 数塔问题-DP解法

数塔问题-DP解法#include<iostream>#include <stdio.h>#include <stdlib.h>using namespace std;int DataTower(int n,int d[][5]);int main(){ int d[5][5]={{8},{12,15},{3,9,6},{8,10,5,12},{16,4,18,10,9}}; DataTower(5,d);}//算法的步骤:/*从第倒

2020-05-29 12:43:44 309

原创 Java----Lambda表达式知识梳理

Java----Lambda表达式知识梳理

2020-05-26 21:35:37 217

原创 23大设计模式---01单例模式

23大设计模式—01单例模式简介:单例模式就是保证类只有一个实例,并且提供一个可以访问到该单例对象的全局访问点下面举几个使用到单例模式的例子:Windows的Task Manager(任务管理器)就是很典型的单例模式项目中,读取配置文件的类,一般也只有一个对象。没有必要每次使用配置文件数据,每次new一个对象去读取。数据库连接池的设计一般也是采用单例模式,因为数据库连接是一种数据库资源在Spring中,每个Bean默认就是单例的,这样做的优点是Spring容器可以管理在servlet编程中,

2020-05-26 18:30:45 150

原创 IDEA使用UML插件

IDEA使用UML插件

2020-05-26 16:34:46 1583

原创 几何问题中的分治法

几何问题中的分治法1.最近对问题问题描述:设p1=(x1,y1),p2=(x2,y2),…,pn=(xn,yn)一共n个点构成点集S,最近点对问题就是找出集合中距离最近的两个点,严格来说最近点对可能多于一个,但我们简单起见只找出一对即可。算法思路:(1)划分:将集合S分成两个子集S1和S2,根据平衡子问题原则,每个子集中大约有n/2个点,设集合S的最近点对是pi与pj(1<=i,j<=n),则会出现三种情况。①pi在S1中,pj在S1中②pi在S2中,pj在S2中③pi在S

2020-05-26 15:17:45 615

原创 腾讯2020-05春招补录笔试(刷板问题)

腾讯2020-05春招补录笔试这个题可以按分治思想,把问题简化为找到最小值,分成两部分,在每个部分内继续找最小值划分首先看一下算法分析:我们有两种刷法,横着刷与竖着刷核心思想就是利用上面两种方法把最短的刷完递归①只利用横着刷把最短刷完然后递归为什么要全用横着刷而不是横竖混刷?因为如果第一次横着刷以后再竖着刷的话,接下来就是递归,如果在子问题中先横着刷的话那么还不如在上一次中直接横着再刷一道,这样并不会影响总次数。如果子问题竖着刷的话,接着递归在新的子问题中如果横着刷的话还不如在上一次的

2020-05-26 15:13:09 268

原创 最大子段和问题------dp与分治法

最大子段和问题------dp与分治法I.dp法dm[i]表示以nums[i]为右端点的最大子序和class Solution { public int maxSubArray(int[] nums) { int max; int []dm=new int[nums.length]; dm[0]=nums[0]; max=dm[0]; for(int i=1;i<nums.length;i++)

2020-05-22 12:43:03 220

原创 数字旋转方阵

数字旋转方阵import org.junit.Test;public class Test1 { //数字旋转方阵 @Test public void Test() { int data[][]=new int[6][6]; Full(6,data,0,1); for (int[] datum : data) { for (int i : datum) { System.ou

2020-05-22 09:20:50 805

原创 最小生成树算法---Prim算法和Kruskal算法

最小生成树算法—Prim算法和Kruskal算法最小生成树的两种方法:Kruskal算法和Prim算法

2020-05-20 23:57:22 166

原创 最短路径算法---狄杰斯特拉算法

最短路径算法—狄杰斯特拉算法一.介绍这是一种按照路径长度递增的次序产生最短路径的算法,采用的是贪心的思想,对带权图(有向和无向均可)寻找最短路径;该算法对于不含负权的网来说,是目前已知的最快的单源最短路径算法,时间复杂度为o(n^2)二.算法介绍与代码实现首先我们看以这张图为例:该图的领接矩阵表示为:1.首先我们需要三个数组(数组下标从1开始)mark:用来标记单源顶点(我们这里取为顶点1)到该顶点的最短路径是否已经求到了dist:标志单源顶点到该顶点的最短路径长度path:表示到该节

2020-05-20 22:03:03 2550 1

原创 23大设计模式----前言

23大设计模式----前言我们通常称呼为设计模式GOF23,GOF指Group Of Four,23大设计模式是由4个大牛总结出来的23大设计模式我们可以分为3大类:1.创建型模式(5个)单例模式,工厂模式,抽象工厂模式,建造者模式,原型模式2.结构型模式(7个)适配器模式,桥接模式,装饰模式,组合模式,外观模式,享元模式,代理模式3.行为型模式(11个)模板方法模式,命令模式,迭代器模式,观察者模式,中介者模式,备忘录模式,解释器模式,状态模式,策略模式,职责链模式,访问者模式

2020-05-19 23:23:43 144

原创 多线程知识点复习巩固

多线程知识点复习巩固文章目录多线程知识点复习巩固一.相关概念1.并发与并行2.线程与进程3.线程调度I.分时调度II.抢占式调度4.主线程二.多线程的实现1.创建Thread的子类I.步骤及举例II.多线程随机性打印结果的实现原理III.多线程执行的内存原理IV.Thread类的常用方法2.实现Runnable接口3.Runnable与Thread的比较三.线程同步1.线程安全2.解决线程安全问题I.同步代码块II.同步方法III.Lock锁机制三..线程状态4.等待与唤醒机制I.线程间的通信II.等待与

2020-05-19 22:57:59 487

转载 根据递归方程求时间复杂度

根据递归方程求时间复杂度

2020-05-19 09:18:07 1022

原创 Java集合框架讲解

Java集合框架讲解

2020-05-19 00:38:32 384

原创 求大于等于N的最小smith数

求大于等于N的最小smith数什么是Smith数//c++#include <iostream>#include<algorithm>using namespace std;int isPrime(int N){ for(int i=2;i<=N-1;i++) { if(N%i==0) return 0; } return 1;}int SumDigits(int N){ int

2020-05-18 18:25:56 2135

转载 一次遍历删除倒数第N个节点

算法原理:设置两个指针p1,p2,现将两个指针指向头部,p2向前移动N+1步,接着两者保持距离向前移动直到p2为null,这时p1指向了倒数第N个节点的前1个一次遍历删除倒数第N个节点

2020-05-14 10:50:50 119

原创 哈夫曼树

哈夫曼树(最优二叉树)视频教程哈夫曼编码是现代压缩算法的基础,是一种前缀码,即任意一个字符的二进制编码都不是其他字符的前缀一.算法步骤与特点总结①以权值作为根节点构建n棵二叉树,组成森林②在森林中选出根据节点最小的两棵树合并作为一个新树的左右子树,新树的根节点为其左右子树的根节点之和③从森林中删除刚才选取的两棵树并将新树加入森林④重复上述步骤直到只剩下一棵树,该树便是哈夫曼树(最优二叉树)带权路径长度即WPL二.代码实现第一步:定义节点//定义节点class Node{

2020-05-12 17:08:05 346

原创 分治法实例

分治法实例1.基本思想(1)分解:将要求解的问题用若干较小的同类子问题(2)求解:当问题被划分得足够小的时候,用简单方法解决(3)合并:根据求解的问题,将子问题的接解逐层合并得到原问题的最终解2.实例视频教程上图有个小错误,选手二的第5天为5import org.junit.Test;public class Math { @Test public void Test() { Solution solution = new Solution(4);

2020-05-11 17:31:24 715

原创 浅层神经网络分析

浅层神经网络分析1.构造简单的神经网络2.前向传播分析看横线上面的3.反向传播抱歉,下载下来旋转看吧

2020-05-11 13:42:17 175

转载 Python office全套教程

Python office全套教程

2020-05-10 11:27:09 882

原创 Matplotlib库基础图表函数

Matplotlib库基础图表函数文章目录Matplotlib库基础图表函数

2020-05-10 01:02:08 371

原创 Leedcode45----跳跃游戏2

Leedcode45----跳跃游戏2方案一:动规+逆向思维class Solution{ //逆向思维 public int jump(int[] nums) { int f[] = new int[nums.length]; f[nums.length-1] = 0; for(int i=nums.length-2;i>...

2020-05-08 00:30:29 105

原创 Leedcode-55

Leedcode-55----逆向思维class Solution { //逆向思维 public boolean canJump(int[] nums) { List<Integer> list = new ArrayList<>(); list.add(nums.length-1); for(int i=...

2020-05-06 13:20:20 101

原创 贪心两道题

贪心两道题1.LeedCode-392题给定字符串 s 和 t ,判断 s 是否为 t 的子序列。你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s 是个短字符串(长度 <=100)。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序...

2020-05-05 18:37:15 276

原创 二分查找

二分查找 int Binary_Search(int arr[],int key) { int low=0; int high =arr.length-1; int middle; while(low<=high)//这里必须写等号,因为在相等时恰好此时等于key,下面有例子说明 { m...

2020-05-05 17:04:56 93

原创 平衡二叉树构造

平衡二叉树构造上一篇:二叉排序树----添加,删除,修改,查询平衡二叉树也即AVL树,他可以提高查找的效率,像并查集的构建过程就用到了平衡二叉树的平衡因子特点(不是平衡二叉树啊),满足任意节点的左子树的深度减去右子树的深度的值之差(称之为平衡因子)绝对值小于等于1,那么这棵二叉树为平衡二叉树。在构建过程中会发生左旋与右旋的现象,那么当平衡因子大于1就右旋,平衡因子小于-1就左旋举例看一下...

2020-05-05 13:30:04 671

原创 小程序开发教程01----准备工作

小程序开发教程01----准备工作文章目录小程序开发教程01----准备工作一.前期准备二.安装开发者工具三.开发第一个Hello Woorld!下一篇:小程序开发教程02一.前期准备点击微信公众号平台填写表单注册现在在你的邮箱内部有了链接点击链接跳转接下来按照步骤往下走就行(感觉我写的太详细了)之后进入到小程序界面,然后点击右侧填写(下面箭头处原来是填写,填写完成后就是这...

2020-05-03 22:02:46 150

原创 Matplotlib入门教程

Matplotlib入门教程

2020-05-03 18:47:08 530

原创 子数组中最大出现次数最多的元素(Leedcode1157)

子数组中最大出现次数最多的元素(Leedcode1157)1.线段树(超时未通过,我不知道哪里有问题)class MajorityChecker { int[] arr; int tree[]; public MajorityChecker(int[] arr) { this.arr = arr; this.tree = new int[...

2020-05-02 15:22:24 290

原创 摩尔投票算法

摩尔投票算法import org.junit.Test;public class Test1 { @Test public void Test() { } //摩尔投票算法求众数 // 局限性:(求在数据中出现一般以上的数),这一点在最后要判断 //求众数 //算法步骤: //定义两个变量temp,count=0,...

2020-05-02 14:34:13 139

原创 Mysql分组排名问题

分组排名

2020-05-01 14:29:15 148

原创 Mysql语法教程

很久没用了,今天把知识系统的梳理一遍文章目录一.数据库概念二.Mysql安装与使用三.SQL基本概念与通用语法四. 数据库的CRUD操作五.数据库表的CRUD操作六. 数据库表中记录的基本操作七.数据库的查询操作八.表的约束九.多表操作十.三大范式十一.数据库的备份和还原十二.多表查询十三.子查询十四.多表查询练习十五.事务十六.用户管理和权限管理一.数据库概念二.Mysql安装与使用三....

2020-05-01 00:49:25 656

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除