自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (1)
  • 收藏
  • 关注

原创 图(leetcode-785)-判断二分图

class Solution { /** 参数:graph, graph[u]表示一个节点数组,由节点u的领接节点组成 */ public boolean isBipartite(int[][] graph) { // 定义 visited 数组,初始值为 0 表示未被访问,赋值为 1 或者 -1 表示两种不同的颜色。 int[] visited = new int[graph.length]; // 因为图中可能含.

2022-01-03 14:10:22 259

原创 C盘快满了,如何删除不需要的文件?

第一步:勾选隐藏的项目第二步:查看目录:System Volume Information的大小【右键属性】System Volume Information 是一个隐藏的系统文件夹,"系统还原"工具使用该文件夹来存储它的信息和还原点。您的计算机的每个分区上都有一个 System Volume Information 文件夹。“System Volume Information”文件夹,中文名称可以翻译为“系统卷标信息”。这个文件夹里就存储着系统还原的备份信息,C盘空间被占满的时候...

2021-11-12 14:09:24 5418

原创 python批量图片改名:前面补0,实现00001开头

第一步:改成顺序命名import osdef myrename(path): file_list=os.listdir(path) for i,fi in enumerate(file_list): old_dir=os.path.join(path, fi) filename=str(i+1)+"."+str(fi.split(".")[-1]) new_dir=os.path.join(path, filename)

2021-11-11 15:12:56 2782

原创 贪心算法(leetcode-1005):k 次取反后最大化的数组和

思路:1、对原数组排一次序。2、迭代k次取反中,考虑小于0和大于0的情况。 2.1 小于0的数组区间,直接取反,到达负数和正数界限时跳过。 2.2 大于0的数组区间,直接取反。3、累计数组。class Solution { public int largestSumAfterKNegations(int[] nums, int k) { if (nums.length == 1) return k % 2 == 0 ? nums[...

2021-10-20 10:20:57 139

原创 贪心算法(leetcode-45):跳跃游戏||

思想:每次在上次能跳到的范围(end)内选择一个能跳的最远的位置(也就是能跳到max_far位置class Solution { public int jump(int[] nums) { int end = 0; //上次跳跃可达范围右边界(下次的最右起跳点) int maxFar = 0; //目前能跳到的最远位置 int step = 0; // 跳跃次数 for(int i = 0; i < nums

2021-10-19 11:52:18 1372

原创 贪心算法(leetcode-55):跳跃游戏

思路:跳几步无所谓,关键在于可跳的覆盖范围!不一定非要明确一次究竟跳几步,每次取最大的跳跃步数,这个就是可以跳跃的覆盖范围。这个范围内,别管是怎么跳的,反正一定可以跳过来。问题就转化为跳跃覆盖范围究竟可不可以覆盖到终点!算法步骤:每次移动取最大跳跃步数(得到最大的覆盖范围),每移动一个单位,就更新最大覆盖范围。贪心算法局部最优解:每次取最大跳跃步数(取最大覆盖范围),整体最优解:最后得到整体最大覆盖范围,看是否能到终点。class Solution { //跳...

2021-10-19 11:11:52 1707

原创 贪心算法(leetcode-122):买卖股票的最佳时机

思路:1、把利润分解为每天为单位的维度,而不是从0天到第3天整体去考虑!那么根据prices可以得到每天的利润序列:(prices[i] - prices[i - 1]).....(prices[1] - prices[0])。收集正利润的区间,就是股票买卖的区间,而我们只需要关注最终利润,不需要记录区间。2、局部最优:收集每天的正利润,全局最优:求得最大利润。class Solution { public int maxProfit(int[] prices) {

2021-10-19 11:01:44 162

原创 贪心算法(leetcode-376):摆动序列

思路:局部最优:删除单调坡度上的节点(不包括单调坡度两端的节点),那么这个坡度就可以有两个局部峰值。整体最优:整个序列有最多的局部峰值,从而达到最长摆动序列。实际操作上,其实连删除的操作都不用做,因为题目要求的是最长摆动子序列的长度,所以只需要统计数组的峰值数量就可以了(相当于是删除单一坡度上的节点,然后统计长度)class Solution { public int wiggleMaxLength(int[] nums) { if(nums.length <.

2021-10-18 20:39:30 142

原创 贪⼼算法(leetcode-455):分发饼⼲

两个思路: 1、优先考虑饼干,小饼干先喂饱小胃口 2、优先考虑胃口,先喂饱大胃口//方法一 优先考虑饼干,小饼干先喂饱小胃口class Solution { public int findContentChildren(int[] g, int[] s) { Arrays.sort(g); Arrays.sort(s); int index = 0; //小饼干先喂饱小胃口 for(int i = 0; ...

2021-10-17 23:53:48 96

原创 修改数据库

1.扩大数据库空间为数据库添加新的数据文件alter database RshDBadd file( name=RshDB_Data2, filename='E:\Data\RshDB_Data2.ndf', size=6mb, filegrowth=0)为数据库添加新的日志文件alter database RshDBadd log file( name=Rs...

2018-08-29 21:37:39 375

原创 创建数据库

一、使用图形界面SQLSMS工具创建。这个比较容易,不容赘述。二、使用CREATE DATABASE语句创建create database 酒店客房管理系统on( name=酒店客房管理系统_DATA, filename='D:\sql数据库\酒店客房管理系统.mdf', size=3mb, maxsize=5mb, filegrowth=10%),( name=H...

2018-08-27 20:01:49 480

原创 数据库学习笔记

1.数据库的三级模式有外模式、模式、内模式构成 。    外模式是用户可见部分的存在形式;    模式可以等价为全体数据的逻辑结构且用户不可见;    内模式对应数据库的物理设计和存储方式。当模式改变时,有数据库管理员对各个外模式/模式的映像作相应的改变,但是外模式可以不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,因此,外模式/模式映像保证了 数据与程序的逻辑独立性 。...

2018-08-13 22:27:18 376

原创 基本数学问题(二)

一、复数的基本运算复数的基本运算公式:加法:(a+bi)+(c+di)=(a+c)+(b+d)i;减法:(a+bi)-(c+di)=(a-c)+(b-d)i;乘法:(a+bi)*(c+di)=(ac-bd)+(ad+bc)i;除法:(a+bi)/(c+di)=(ac+bd)/(c*c+d*d)+(bc-ad)/(c*c+d*d);幂运算:同乘法;指数运算:e^(a+bi...

2018-07-31 22:41:43 807

原创 基本数学问题(一)

一、判断闰年判断闰年:闰年是历法上的一种折中,主要是为弥补因人为制定的历法而造成的年度天数与地球实际公转周期的时间差而设置的,也就是说,补上时间差的年份为闰年,闰年的一个基本规则就是“四年一闰,百年不闰,四百年再闰”,就是能被4整除,但同时不被100整除却能够被400整除的年份。public class LeapYear { static int IfLeapYear(int yea...

2018-07-29 23:35:37 235

原创 经典排序之合并排序

  一、基本思想: 合并排序算法就是将多个有序数据表合并成一个有序数据表。如果参与合并的只有两个有序表,则称为二路合并,对于一个原始的待排序序列,往往可以通过分割的方法来归结为多路合并排序,下面以二路合并为列,介绍合并排序算法。 二、动态图演示三、代码实现public class MergeSortTest { static final int SIZE = 15; stat...

2018-07-20 00:46:02 855

原创 经典排序之插入排序

一、插入排序1.基本思想:通过对未排序的数据逐个插入至合适的位置而完成排序工作。2.代码实现public class InsertionSort { static final int SIZE = 10; static void insertionSort(int[] a) { int i,j,t,h; for(i = 1; i &lt; a.length; i+...

2018-07-18 00:01:20 214

原创 经典排序之选择排序

一、直接选择排序    1.基本思想:假设数据元素存放在数组L中,初始时,有序区为空,将L[0]~L[n-1]作为无序区;每次从无序区中选择最小的数据元素L[min]{0&lt;=min&lt;=n-1},与无序区的第一个数据元素交换,使有序区长度增1,无序区长度减1。每执行这一趟称为直接选择排序。    ...

2018-06-30 21:21:38 155

原创 Java多线程

首先要了解操作系统中进程与线程的区别;进程:是程序的一次动态执行过程,它对应了代码的加载、执行至执行完毕的完整过程,这个过程也是进程本身从产生、发展至消亡的过程,每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1--n个线程。(进程是资源分配的最小单位);线程:是比进程更小的单位,进程在其执行过程中,可以产生多个线程,形成多执行线索,即每个线程也有它自身的产...

2018-06-24 23:13:20 163

原创 平方十位数

标题:平方十位数由0~9这10个数字不重复、不遗漏,可以组成很多10位数字。这其中也有很多恰好是平方数(是某个数的平方)。比如:1026753849,就是其中最小的一个平方数。请你找出其中最大的一个平方数是多少?注意:你需要提交的是一个10位数字,不要填写任何多余内容。答案为:9814072356思路:枚举32043~100000这些数的平方数是否包含0~9,显然要用大数字运算代码:public ...

2018-06-06 19:45:31 432

原创 51汇编语言指令集

一、符号定义名    称说        明Rnn=0~7,R0~R7寄存器Direct直接地址,内部数据区的地址RAM(00H~7FH)SFR(80H~FFH) B,ACC,PSW,IP,P3,IE,P2,SCON,P1,TCON,P0@Ri间接寻址Ri=R0、R1   8051/31RAM地址(00H~7FH)  8052/32RAM地址(00H~FFH)#data8位常数#data1616位...

2018-05-26 14:54:29 8702 2

原创 译码

链接:https://www.nowcoder.com/acm/contest/124/A来源:牛客网现在定义一种编码规则:对于长度为3的字符串(均由小写字母组成),首先按照字典序进行排序,即aaa,aab,aac,…,zzz,将这些字符串按照顺序依次从00001至17575编码(前缀0不可省略),即aaa=00000,aab=00001,aac=00002,…,zzz=17575。现在给出一串数...

2018-05-23 23:27:55 327

原创 简单多边形

链接:https://www.nowcoder.com/acm/contest/110/B来源:牛客网题目描述为了让所有选手都感到开心,Nowcoder练习赛总会包含一些非常基本的问题。 比如说: 按顺时针或逆时针方向给你一个简单的多边形的顶点坐标,请回答此多边形是顺时针还是逆时针。 输入描述:输入包含N + 1行。第一行包含一个整数N,表示简单多边形的顶点数。在下面的N行中,第i行包含两个...

2018-05-18 23:02:54 578

原创 第九届蓝桥杯——明码

标题:明码汉字的字形存在于字库中,即便在今天,16点阵的字库也仍然使用广泛。16点阵的字库把每个汉字看成是16x16个像素信息。并把这些信息记录在字节中。一个字节可以存储8位信息,用32个字节就可以存一个汉字的字形了。把每个字节转为2进制表示,1表示墨迹,0表示底色。每行2个字节,一共16行,布局是:    第1字节,第2字节    第3字节,第4字节    ....    第31字节, 第32字...

2018-05-13 20:26:03 409

原创 Java中的集合类

集合可以看作是一个容量,如红色的衣服可以看做是一个集合,所有Java类中的书可以看作一个集合。对于集合中的各个对象很容易将其放到集合中,也很容易将其取出来,还可以将其按照一定的顺序进行摆放。Java中提供了不同的集合类,这些类具有不同的存储对象的方式,并提供了相应的方法以方便用户进行遍历、添加、删除、以及查找指定的对象。集合类存放于java.util包中。集合类存放的都是对象的引用,而非对

2018-04-29 23:02:38 162

原创 Java中的继承与多态

一、继承性Java中通过继承实现代码复用,所有的类都是通过直接或间接地继承java.lang.Object类得到的。Java语言中任何一个对象都是Object类的实例。1、创建子类Java中,使用关键字ectends实现继承,格式为:[类修饰]class 类名 extends 父类名 [implements 接口列表]{//类声明}继承而得到的类称为子类,被继承的类称为父类

2018-04-10 20:29:43 284

原创 全排列

在程序设计过程中,我们往往要对一个序列进行全排列或者对每一个排列进行分析。           全排列算法便是用于产生全排列或者逐个构造全排列的方法。当然,全排列算法不仅仅止于全排列,对于普通的排列,或者组合的问题,也可以解决。基本思想:解决一个算法问题,我比较习惯于从基本的想法做起,我们先回顾一下我们自己是如何写一组数的全排列的:1,3,5,9(为了方便,下面我都用数进行全排列而

2018-03-31 17:37:46 156

原创 素数筛法

基本思想:用筛法求 素数的基本思想是:把从1开始的、某一范围内的正整数从小到大顺序排列, 1不是素数,首先把它筛掉。剩下的数中选择最小的数是素数,然后去掉它的倍数。依次类推,直到筛子为空时结束。#include#define N 100000void sifter(int num);int main(){ int num; printf("请输入一个数:"); scanf

2018-03-31 16:59:26 184

原创 经典排序之交换排序

交换排序的基本思想是:对待排序数据元素,两两比较其关键字,若发现存在逆排序,则交换这两个数据,一直到待排序数据元素中没有逆序为止。一、冒泡排序(Bubble Sort)冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素

2018-03-18 16:01:06 349

原创 N阶魔方

【问题描述】n阶魔方,又叫幻方阵,在我国古代称为“从横图”,是一个比较有趣的游戏。所谓N阶魔方就是一个填数字游戏。要求用1到N*N的数字(N为奇数)不重复地填入方阵中,使得每一行、每一列、每条对角线的数字累加和都相等。如: 8  1   63  5   74   9  2算法分析:⑴将1放在第一行中间一列;⑵从2开始直到n×n止各数依次按下列规则存放;每一个

2018-03-17 13:00:25 1301

原创 第39级台阶

【问题描述】小明刚刚看完电影《第39级台阶》。离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?请你利用计算机的优势,帮助小明寻找答案。此问题重点在于走的最后步数是偶数步,要完成39级台

2018-03-11 21:15:48 523

原创 出栈次序

【问题描述】X星球特别讲究秩序,所有道路都是单行线。一个甲壳虫车队,共16辆车,按照编号先后发车,夹在其它车流中,缓缓前行。路边有个死胡同,只能容一辆车通过,是临时的检查站,如图所示。X星球太死板,要求每辆路过的车必须进入检查站,也可能不检查就放行,也可能仔细检查。如果车辆进入检查站和离开的次序可以任意交错。那么,该车队再次上路后,可能的次序有多少种?为了方便起见,假设检查

2018-03-11 20:29:27 189

原创 某电视台举办了低碳生活大奖赛。题目的计分规则相当奇怪:

某电视台举办了低碳生活大奖赛。题目的计分规则相当奇怪:     每位选手需要回答10个问题(其编号为1到10),越后面越有难度。     答对的,当前分数翻倍;答错了则扣掉与题号相同的分数(选手必须回答问题,不回答按错误处理)。     每位选手都有一个起步的分数为10分。     某获胜选手最终得分刚好是100分,如果不让你看比赛过程,     你能推断出他(她)哪个题目答对

2018-03-07 20:48:05 1645

原创 浅谈递归思想

递归是个很自然的东西,理解它其实并不难,面对要用递归的实际问题,难点就是构建递归关系、确定递归边界;递归的定义如下:递归:参见“递归”。什么?这个定义什么也没说啊!好吧,就是如下:递归:如果还没理解递归是什么意思,参见“递归”。看到这里或许你就明白了,递归就是自己调用自己。举个不恰当的例子:你没钱了,找你爸要钱,爸:我没钱,找你妈要;于是你找到你妈。妈:我没钱,找你爸要

2018-02-28 21:40:28 2412 1

原创 JavaScript之DOM元素尺寸与位置

一、获取元素CSS大小1、通过style内联获取元素的大小style只能获取行内的CSS样式的宽和高,没有则返回空。window.onload = function(){ var box = document.getElementById('box'); alert(box.style.width); alert(box.style.height); alert(type

2018-02-26 22:02:36 196

原创 JavaScipt之继承与原型链

继承是面向对象中一个核心的慨念。其他正统面向对象语言会有两种方式实现继承;一个是接口继承,一个是原型继承。而ECMAScript只支持继承,不支持接口实现,而实现继承的方式依靠原型链完成。function Box(){ //Box 构造 this.name = 'wu';}function Desk(){ //Desk 构造 this.age = 100;}D

2018-01-31 22:57:12 200

原创 JavaScript面向对象与原型(二)

hasOwnProperty()方法检测属性是否存在实例中,in可以判断属性是否存在实例中或原型中,那么结合这两种方法就可以判断属性是否存在原型中;function isProperty(objest, property){ return !object.hasOwnProperty(property) && (property in object);}var box = ne

2018-01-31 20:57:41 254

原创 JavaScript之面向对象与原型(一)

一、创建对象ECMAScript有两种开发模式:1.函数式(过程化);2.面向对象(OOP);面向对象语言有一个标志,就是有类的慨念,而通过类可以创建任意多个具有相同属性和方法的对象。但是,ECMAScript没有类的慨念,所以它的对象与基于类的语言的对象有所不同。1、JS中普通创建对象的方法var box = new Object();box.name = 'wu';box.ag

2018-01-27 21:42:10 210

原创 JavaScript之匿名函数与闭包

一、匿名函数  匿名函数就是没有名字的函数, 函数的定义大致分为三种方式:第一种:普通函数function f1(){return 'Danie_wu';}

2018-01-25 22:28:06 214

原创 JS中预编译问题

Javascript是弱类型语言,相对于一些强类型语言,比如Java、C\C++..., 它本身也有类似于编译的预编译行为,它是解释性语言,它的预编译就是发生在函数执行前一刻。这里的函数不单单是function,代码块也算是函数。今天在这里结合大神们博文,就我自己,作以下总结。先来看下如下代码:

2018-01-02 22:10:43 782 1

虚拟机与Linux的安装

虚拟机与Linux的安装教程,针对初学linux的人。。。。。。

2018-11-03

空空如也

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

TA关注的人

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