自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java类与对象:static知识

static:1.对类中成员以及方法的定义2.静态代码块与匿名代码块3.静态进口包//staticpublic class Student{ private static int age; //静态变量 private double score; //非静态变量 public void run(){ System.out.println("run"); } public static void go(){ Sy

2021-09-26 18:07:18 140 1

原创 java类与对象:类型转换

public class Work{public static void main(String args[]){ //父类子类的类型转换 //1.子类转化为父类(向上转型) //2.父类转化为子类(向下转型) Person student1 = new Student(); //子类对象可直接转换为父类类型(父类引用指向子类对象),也就是向上转型

2021-09-26 17:19:46 287

原创 java类与对象:多态

public class Person{ public void run(){ System.out.println("run"); }}public class Student extends Person{ @Override public void run() { System.out.println("son"); } public void eat(){ System.out.println("

2021-09-26 11:52:17 83

原创 数据结构——链表基本操作

//链表#include<iostream>using namespace std;#define DataType int //结点结构体定义struct ListNode { DataType data; ListNode *next;};/*1.数据域:要存储的数据2.指针域:指向后一结点的地址*///结点创建ListNode* ListCreateNode(DataType data) { ListNode* node = (ListNode*

2021-09-25 19:57:59 125

原创 数据结构:顺序表基础实现

//顺序表#include<iostream>using namespace std;//数据结构定义:数组类型、容量、长度#define MAXN 1024#define DateType int struct SeqList { DateType data[MAXN]; int length;};//索引接口:返回下标为i的元素DateType SeqListIndex(struct SeqList *sq, int i) { if (i < 0 |

2021-09-23 23:25:41 53

原创 java类与对象:方法重写

1.成员函数是静态://重写都是方法的重写,跟属性无关public class B { public static void print(){ System.out.println("b.test"); }}public class A extends B{ public static void print(){ System.out.println("a.test"); }}public class Work {

2021-09-22 23:21:47 112

原创 java面向对象:super

package OOP;//基类/父类 派生类/子类//子类继承了父类,就会拥有父类的全部方法!//在Java中,所有的类,都默认直接或者间接继承Objectpublic class Person { protected String name = "Person"; public void print(){ System.out.println("Person"); }}package OOP;public class Student e

2021-09-15 19:57:52 66

原创 java面向对象:封装

package OOP;public class Student { //private:私有 private String name; private int id; private char sex; //提供一些可以操作这些属性的方法 //提供一些public的get、set方法 //get:获得这些数据 public String getName(){ return name; //retur

2021-09-15 18:10:49 49

原创 java类与对象:简单回顾

package OOP;//一个项目应该只有一个main方法public class Application { public static void main(String[] args) { /* 1.类与对象理解: 类是一个抽象性质的模板,对象是一个具体的实例 2.方法 定义、调用! 3.对应的引用 引用类型 非八大基本类

2021-09-15 17:49:43 45

原创 java面向对象:构造器

package OOP;public class Person { //一个类即使什么都不写,也会存在一个方法 //显式定义构造器 String name; /* 构造器作用 1.使用new关键字,本质是在调用构造器 2.用来初始化值 */ public Person(){}; //有参构造:一旦定义了有参构造,无参就必须定义 public Person(String name){ thi

2021-09-15 17:10:06 46

原创 java面向对象:类与对象的创建

面向对象本质:以类的方式组织代码,以对象的方式组织(封装)数据package OOP;//学生类public class Student { //属性:子段 String name; int age; //方法 public void study(){ System.out.println(name + "在学习"); //System.out.println(this.name + "在学习"); }}

2021-09-15 16:31:45 106

原创 java数组:多维数组

package array;public class Array04 { public static void main(String[] args) { //[4][2] /* 1,2 array[0] 2,3 array[1] 3,4 array[2] 4,5 array[3] */ int[][] array = {{1,2},{2,3},{3,4},{4,

2021-09-14 23:01:47 47

原创 java数组:数组应用

//普通package array;public class Array02 { public static void main(String[] args) { int[] numbers = {1,2,3,4,5}; //打印全部数组元素 for (int i = 0; i < numbers.length; i++) { System.out.println(numbers[i]); }.

2021-09-14 21:23:05 98

原创 java数组:数组的声明和创建

package array;数组的声明和创建public class Array { public static void main(String[] args){ //变量类型 变量名 = 变量值 int[] numbers = new int[5]; numbers[0] = 1; numbers[1] = 2; numbers[2] = 3; numbers[3] = 4;

2021-09-14 20:19:48 53

原创 java方法:可变参数

//可变参数//本质上提供了一个数组package method;import java.util.Scanner;public class Demo03 { public static void main(String[] args){ Demo03 demo03 = new Demo03(); demo03.printMax(); demo03.printMax(2.0,3.0); demo03.printMax(2,3.

2021-09-14 19:18:13 50

原创 java流程控制:打印三角形

package struct;import java.util.Scanner;public class Test { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //思想:直接打印一个三角形很难,考虑打印空白部分,利用空白部分做文章 //打印五行的三角形 for(int i = 1;i &

2021-09-14 17:05:18 61

原创 java流程控制:九九乘法表

package struct;import java.util.Scanner;public class Test { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //类似于开发程序的思想:大事化小,小事化无 /** * 1.我们先打印第一列 * 2.我们

2021-09-14 16:43:30 68

原创 java流程控制:选择结构

//ifpackage struct;import java.util.Scanner;public class ifdemo { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个内容"); String str = scanner.nextLine(); /.

2021-09-13 23:09:21 53

原创 java流程控制:Scanner

//Scanner基础用法package Scanner;import java.util.Scanner;public class Test0{ public static void main(String[] args) { //创建一个扫描器对象,用于接收键盘数据 Scanner scanner = new Scanner(System.in); System.out.println("请输入字符串"); Str.

2021-09-13 22:36:30 71

原创 java基础:逻辑运算符、位运算符、三元运算符

package base;public class Practice{ public static void main(String[] args) { //逻辑运算符 //与(and) 或(or) 非(取反) boolean a = true; boolean b = false; System.out.println(a && b); System.out.printl

2021-09-13 21:15:27 97 2

原创 java基础:变量及其作用域

//变量类型:类变量、实例变量、局部变量public class Practice { //实例变量:从属于对象,如果不自行初始化,默认值 0 0.0 //布尔值默认为false //除了基本类型,其余都是null String name; int age; //类变量 static 可以不自行初始化,此性质同实例变量相同 //能够直接被调用 static double salary1 = 2500; static...

2021-09-12 23:55:28 104

原创 java基础:类型转换

public class practice { public static void main(String[] args) { //类型转换 //byte<short<char<int<long<float<double int i1 = 128; //高等级向低等级转换需要强制类型转换 //强制转换 (类型)变量名 高————低 byte i2 = (

2021-09-11 23:02:06 111 1

原创 java基础:基本数据类型及其拓展

public class demo1 { public static void main(String[] args) { //学习任务1:八大基本数据类型 //整数 int num1 = 10; //最常用 byte num2 = 127; short num3 =20; long num4 = 30l; //Long类型要在数字后面+L //小数:浮点数 f

2021-09-11 20:18:25 86

原创 周末总结

背包问题学习1背包问题学习2背包问题学习3时间分割点(上周所写以及本周所写)背包问题学习4背包问题学习5背包问题学习6

2021-05-17 10:35:33 85

原创 背包问题学习8——poj2184——01背包变形

题目链接1.思想转换对于每头牛,要么选要么不选,有点类似于01背包,但是又有两个参数:智力值和幽默值,我们设dp[i]为智力值为i时对应的幽默值最大,最终选择完后能够得到最大的幽默值,...

2021-05-17 10:30:10 95 1

原创 背包问题学习7——poj3181——高精度大数处理

题目链接数据超过范围时的处理方法#include<iostream>using namespace std;#define ll long longconst ll inf=1e18;int main(){ int n,k; while(cin>>n>>k){ ll dp[1005]={0},a[1005]={0}; dp[0]=1; for(int i=1;i<=k;i++){

2021-05-17 09:28:34 122

原创 背包问题学习6——poj——1787——记录路径

记录路径的代码书写注意点1.因为是记录路径,所以要一个一个的背包进行更新,不能使用二进制代码优化2.主要代码部分if (dp[j - v[i]] + 1 > dp[j] && dp[j - v[i]] && used[j - v[i]] < num[i]) { dp[j] = dp[j - v[i]] + 1; used[j] = used[j -

2021-05-15 22:40:53 267

原创 背包问题学习5——循环细节——poj2163

题目链接1.循环细节写出相应代码后,如果循环明显会超时,则考虑优化可能的优化角度(1)代码本身能够优化:比如背包的二进制优化,即是对代码本身进行优化(2)题目条件进行优化:比如说这个题,本金和固定bond部分都是1000的倍数,从而对循环量进行优化对第二条也要警惕些,从第二条感觉到题目的输入部分对数据量的描述也要警惕了(能够优化循环量)2.题目代码#include<iostream>#include<cstdio>#include<cstring>u

2021-05-12 22:20:10 102 1

原创 背包问题学习4——上界确定(鸽笼原理)、二进制代码优化放进循环中——poj3260(补充理解)

题目链接1.二进制代码优化放进循环中的代码for (i = 1; i <= n; i++) { for (k = 1; k <= num[i]; k *= 2) { for (j = vol; j >= k * val[i]; j--) { dp[j] = min(dp[j], dp[j - k * val[i]] +

2021-05-12 00:49:23 148 4

原创 背包学习总结////////////省赛总结

本次参加省赛,感觉还是自己实力很薄弱,比如对签到题G,保留位数,虽说是很基础的题目,但换我做绝对做不出来,因此,自己的基础知识就有很大的漏洞。同时,在答H题(类01背包)时,尽管思路是自己想的,也完全正确,同时也是自己在最后调出了代码,但还是有很多细节点是另外的小伙伴考虑到的,比如值转换处理我就没考虑到,虽说在区间dp中有类似处理,但没考虑到就很可惜,还是自己做题少,需要多练。尽管在最后出了三道题,可惜罚时上差的比较远,后两道题都是在封榜时出的,很可惜,感觉自己的能力也差很多,比如读英语速度,一些特殊算

2021-05-10 13:39:33 168 3

原创 背包问题学习3——dp状态覆盖

poj1276/作业题O做题时漏掉的点:dp状态更新覆盖掉了之前的状态反思点:降维时要考虑之前的状态是否会被覆盖掉#include <iostream>#include <stdio.h>#include <algorithm>#include <stdlib.h>#include<vector>#define N 10#define maxn 10010#define maxnn 100010using namespace

2021-05-07 21:30:32 123 1

原创 背包问题学习2——hdu1059——思维转换、二进制优化

题目链接1.思维转换两个人分的石子重量值相同,等效成一个人分得一半的石子值,瞬间出来了背包问题模板也就是说有相同量要归到最小规模——便于表示、出思路2.二进制优化代码模板int j = 1; for (int i = 1; i <= N; i++) { int temp = 1; while (a[i] > temp) { c[j++] = temp

2021-05-06 23:18:18 123 1

原创 Same Differences——STL容器中的unordered_map学习

题目链接 #include <iostream> #include <string> #include <unordered_map> #include <algorithm> using namespace std; #define ll long long //1.开ll,不然会WA unordered_map<ll, ll> vis; //2.假定这里写int,int,后

2021-05-06 12:10:49 84

原创 浮点数转换成整型数保留精度——UVA147——dollars

题目:New Zealand currency consists of $100, $50, $20, $10, and $5 notes and $2, $1, 50c, 20c, 10c and 5c coins. Write a program that will determine, for any given amount, in how many ways that amount may be made up. Changing the order of listing does not in

2021-05-05 22:34:03 194

原创 背包问题学习1——去除dp后效性——hdu3466——Proud Merchants

作业题E/hdu3466#include<algorithm>#include<iostream>#include<vector>using namespace std;const int maxn = 5001;int n, m;int dp[maxn];struct xiao{ int pi, qi, vi;}a[maxn];bool cmp(xiao x, xiao y){ return x.pi - x.qi > y

2021-05-05 09:42:46 174

原创 Gym_102220_B_Balanced Diet(动态数组+前缀数组)

这个题在比赛时出思路了,可惜自己没有想到用动态数组减少循环量,用普通数组双重循环会导致超时,因此特意写此篇博客,以此来熟悉动态数组#include <map>#include <vector>#include <string>#include <iostream>#include<algorithm>using namespace std;#define ll long long#define maxn 100010vecto

2021-05-04 08:50:58 226

原创 第八周学习总结——区间dp的学习

一、本周学习了区间dp,通过写反思的学习方法获得了比之前更高效的学习效率,我也发现这个方法对我来讲真的蛮受用的,以下是我本周所做的区间dp题目的反思整理的网页链接区间dp学习1——回文串——做题反思(愣着干嘛,点我啊)区间dp学习2——打表、四边形优化区间枚举(四边形区间优化)(愣着干嘛,点我啊)区间dp学习3——括号匹配 ——做题反思(愣着干嘛,点我啊)区间dp学习4——poj 1651 Multiplication Puzzle——题后反思(愣着干嘛,点我啊)区间dp学习5——hdu 5115

2021-04-25 23:29:46 770 4

原创 区间dp学习5——hdu 5115——Dire Wolf——做题反思

这是原题链接(愣着干嘛,不知道题就点我呀)这个题令我对区间dp有了新的理解,很满足能够在做题慢的情况下能够对题目所涉及的知识最大程度掌握前面的分析过程我学到了很多,还有一个学习到的点是边界区间枚举,这是区间dp第二种表达方式经常需要处理的点对应的网上代码(主要实现部分) memset(dp,INF,sizeof(dp)); for(int i=1;i<=n;i++) dp[i][i]=a[i]+b[i-1]+b[i+1];///区间长度为1的时候的情况

2021-04-21 23:15:58 145

原创 区间dp学习4——poj 1651 Multiplication Puzzle——题后反思

在做这个题时自己对区间dp已经有一定的熟练度了,只不过欠缺了一个思维,这个题为我提供了一个补充这题又学到了一个思维:简化可能性也就是说,当你分类时,顺着分可能性很多的情况下,倒着分,直接去考虑最后一步比如:看我的思考(模拟)过程(错误的)思路修正:代码如下:#include<iostream>#include<cstring>#include<algorithm>#include<iomanip>using namespace std;

2021-04-20 14:49:37 140 2

原创 区间dp学习3——括号匹配 ——做题反思

在dp这里最重要的是思考过程,代码不细写了,思考有了代码自然有的#include<iostream>#include<cstring>#include<algorithm>using namespace std;const int N = 200;char a[N];int dp[N][N];int solve();int main(){ while (cin >> a + 1) { if (a[1] == 'e' &&a.

2021-04-20 12:58:47 107

空空如也

空空如也

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

TA关注的人

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