- 博客(50)
- 收藏
- 关注
原创 MySQL基础——DDL、DML、DQL、DCL语句
同时对于double和float这种小数数据类型,当你需要限制位数的时候可以直接在后面加上数字位数和小数位数,例如double/float (数字位数,小数位数),比如100.0的数字位数就是4,小数位数就是1。varchar(10):虽然规定了字符串长度,但是这时的限制其实是字符串的上限,当存储字符串的长度小于规定长度的时候,实际上占用的空间就是存储字符串的长度,性能和效率都会比char低。此处的where是用来限制修改对象的,如果没有限制,那么就会直接将对应字段的全部数据全部修改。...
2022-08-12 22:28:18
1094
原创 Java多线程详解
首先要明确几个概念程序:完成特定任务,用某种特殊的语言编写的一组指令的集合进程:是执行路径,一个进程同一时间并行或者正在运行的程序线程:是执行路径,一个进程同一时间并行或者执行多个进程,就是多线程注:进程中也有可能有多个线程CPU也分为多核CPU和单核CPU单核CPU:实际上进行的是某种意义上的假CPU,一个CPU同时做好多事,如果一个没有准备好,就先将该事件挂起,去进行别的,可以用一张图来表示多核CPU(取决与主频来利用哪个):多核CPU就相当于多个单核CPU工作同时也要解释两个词的含义并行:多个CPU任
2022-07-14 22:45:17
574
原创 食堂用户菜品关系系统(C语言课设)
该系统我主要划分为两个大模块,分别就是对于用户的操作和对于菜品的操作,对用户的操作,首先提供void Uoperate(),是用户的操作面板,之后选用if-else if-else对指令的解析和调用函数的选择都在这个操作面板,设计内容为 1、注册新用户 2、登录用户 3、修改账户密码 对于不同的指令执行不同的操作,菜品模块类似于用户模块,提供void operate()函数,是菜品的操作面板,也是对于指令的解析和选择调用函数 1
2022-07-04 20:15:25
792
原创 常用类——String类概述
public final class String implements java.io.Serializable, Comparable<String>, CharSequence { private final char value[]; private int hash; 上面是String类源码的一部分1、由final修饰,不可以继承2、实现了Serializable接口:表示字符串支持序列化;实现了Comparable接口,表示String可以比较大小.
2022-06-06 22:27:20
174
原创 前缀极差(C语言)
对于这道题来说,直接对输入的数字进行极差运算比之后询问是再进行计算的时间效率要高很多,如果在输入完数字之后对于询问的会报超时思路非常简单首先对数据进行输入,并且随着数据的输入对于不同数量数字进行极差运算,存储在集合numB中,所以当进行询问的时候直接打印numB所对应位置的极差就可以...
2022-06-04 01:14:06
322
原创 ACMer(C语言)
关键在于对题意的理解,题中所给的范围是在P与Q之间,设人数为num,只要num不为0,num*P*0.01就一定是小于num*Q*0.01的,但是此处num有一个特殊的要求就是num必须为整数,因为num是人数,就涉及到强制转化的内容。(int)num*P*0.01<(int)num*Q*0.01的时候就是这个整数num符合要求的时候num的数量由循环开始不断加,直到试出符合条件的num最重要的点在于num是一个整数,需要利用强制转化来实现对二者的比较,PQ就相当于是一个区间,符合(int
2022-05-25 18:33:59
185
原创 无限的路(C语言)
这个题分为几部分1、首先建立一个函数两点之间的距离2、之后再建立一个函数计算到原点的距离3、最终在主函数中只需要实现两点到原点距离相减可以利用递推做#include<stdio.h>#include<stdlib.h>#include<string.h>#include<math.h>double dp[300][300];//利用二维数组建立一个类似与图中的坐标图double long(int a, int b, int c
2022-05-23 19:03:34
155
原创 匈牙利算法的粗略解释
匈牙利算法的应用场景:二分图可以理解分为两个集合,集合内部的元素不进行彼此配对,但是两集合之间进行配对A集合与B集合进行配对,二分图如下以上即为二分图 ,其中A集合与B集合进行配对,这个图可以刨析为三个部分,A集合为一部分,B集合为一个部分,连接A集合和B集合的线是另一部分,总共这三个部分,如果用代码实现就可以记录这三个部分连接AB集合的线可以视为对于AB集合的关系此时带入一个情景假设你是月老,此时需要对一群男女进行牵红线,但是需要考虑男女之间的意愿,输入的K代表女生所心仪的男生
2022-05-22 22:22:54
258
原创 郑厂长系列故事——逃离迷宫(C语言)
郑厂长没变还是那个假厂长真码农改变的是业余爱好他现在不研究象棋,改玩游戏了!最近,郑厂长爱上了逃离迷宫这个游戏,他日日夜夜的玩,就是想达到自己的目标:1000万,因为这个数字和他在腾讯的年收入一样多。不过,在他跑到9999999时,游戏屏幕上突然出现了好多箱子,郑厂长必须要消除所有这些箱子才能继续玩游戏。这些箱子排成一行,每个箱子一都有个数字,每个数字代表这个箱子需要被点击的次数才会消失。每个箱子被点击时对应数字会减1,并且他右边箱子的数字也会同时减1,当箱子数字变成o,则其就就消失了。需要说
2022-05-17 01:12:40
401
原创 找字符串的子串
//大概可以说是突发奇想了#include <stdio.h>#include <string.h>int main(){ printf("please input the str:\n"); char str[20]; //此处是利用str来存储输入的数据 gets(str); int num = strlen(str); int i = 0; //主逻辑在这儿 //其中i是负责确定字符串子串的第一个字符的位置,j负责确定字符串长度
2022-05-15 23:00:19
612
原创 找完数(C语言)
#include <stdio.h>int judge(int num){ int flag = 0; if (num == 2) { return 1; } else { for (int i = 2; i <= (num / 2); i++) { if (num % i == 0) { flag = 1; break; } } if (flag == 1) { return 0; } else .
2022-05-05 10:16:06
1089
原创 接口(interface)
注:Java不支持子父类的多继承,但是接受接口的多重实现接口的初步理解1、接口用interface进行定义2、在Java中接口和类是并列结构3、接口不能实例化4、只有在实现了接口的类对于接口中的抽象方法全部都实现了之后,才能够成功实现5、Java接口的出现弥补了Java中类的单继承的缺陷6、接口实际上可以看作是一种规范和契约接口的定义方式接口的定义方式又有一道分水岭JDK7之前接口成员>全局常量:public static final>抽象方法
2022-04-27 18:01:55
2126
1
原创 L2-015 互评成绩(C语言)
#include<stdio.h>#include<stdlib.h>#define maxsize 10050void MySort(float* b, int n){ int i, j; float m; for (i = 0; i < n - 1; i++) for (j = 0; j < n - 1 - i; j++) if (b[j] > b[j + 1]) .
2022-04-25 18:57:06
1268
原创 final关键字的使用与抽象类
final关键字的使用final修饰类表示该类不能够被重写public class Person{ String name; int age = 1; boolean isMale; public void eat() { System.out.println("人可以吃饭"); } public void sleep() { System.out.println("人可以睡觉"); }
2022-04-24 18:47:30
200
原创 设计模式之单例设计模式初步
1、使类的构造器的访问权限为private(不能使用new在类的外部创建对象)2、使该类的某个静态方法返回类内部创建的对象注:指向内部产生该类对象的变量也要定义为静态的饿汉式public class Bank { private Bank(){ }; //私有化的构造器 private static Bank instance =new Bank(); //在类的内部创造对象 public static Bank getInstance()
2022-04-22 21:07:32
62
原创 static关键字
1、可修饰:属性、方法、内部类2、static修饰的变量为静态变量属性:按是否用静态变量修饰可以分为静态变量和非静态变量(实例变量) 静态变量:创建多个对象,多个对象共享一个静态变量,通过一个变量修改,会导致静态变量已经修改以下是用于测试的类public class Person{ private String name; private int age = 1; private boolean isMale; static String...
2022-04-22 20:48:04
66
原创 toString的使用与包装类的使用
当我们输出一个对象的引用时,实际上相当于调用toString()以下为toString的原型public String toString() { return getClass().getName()+"@"+Integer.toHexString(hashCode()); }例子:public class Persontext{ public static void main(String[] args) {
2022-04-20 21:06:28
214
原创 大数据实验室考核
1.下面几种类型的数组中的默认值正确的是( )(多选)(4分)A.int类型定义的数组,初始化默认是0B.double类型定义的数组,默认值是0.0C.boolean类型定义的数组,默认值是trueD.char类型定义的数组,使UTF8字符集给出的结果是‘A’C、boolean类型的数据的默认值应该是flaseD、 char类型再UTF8中应该是空格4.以下语句中关于Java构造方法的说法错误的是( )A.构造方法的作用是为创建对象进行初始化工作,比如给成员变量赋值B. .
2022-04-12 20:58:11
1191
原创 equals()方法的重写
equals()本身是一个方法,并不是运算符,而且仅适用于引用数据类型“==”在java的引用数据时使用时,比较的并不是具体的数值,而是地址值。此时并不能有效地比较引用数据类型中的具体数据,比较地址值对于引用数据类型而言没有用,就出现了equals()方法的重写//此处需要注意的是,equals()方法的重写在编译器中是可以自动生成的重写equals()的规定1、对称性 x.equals(y)如果结果为true,那么y.equals(x)的返回结果应该也是true2、自反性 x.equa
2022-04-08 19:56:47
3083
原创 面对对象的多态性、 Object类和equals()方法
多态性的使用当调用父类同名同参的方法时,实际上是执行的是子类重写父类的方法(虚拟方法调用)利用如下类进行示范public class Person{ private String name; private int age = 1; private boolean isMale; public void eat() { System.out.println("人可以吃饭"); } public void sleep()
2022-03-30 21:19:39
333
原创 方法的重写、关键字super
方法重写的概念子类对父类中继承来的方法进行改造、重置、覆盖,利用同名进行再编写重写规定权限修饰符 返回值类型 方法名(形参列表)1、子类对父类进行重写的时候,方法名与形参和父类的一致2、权限修饰符在界定权限的时候,子类的权限一定是大于等于父类的,子类的权限是不可以小于父类的3、返回值类型,若父类被重写的方法返回值是void,那么子类重写的方法结果也只能是void;若父类被重写的方法的返回值类型是A类,那么子类重写的返回值可以是A类或者是A的子类可以总结为,若父类被重写的方法的返回
2022-03-28 19:40:14
1005
原创 面向对象的三大性质之一----继承性
继承性的优点1、减少代码冗余2、便于功能扩展3、为多态性提供前提继承性的格式class A extends BA:子类、派生类、subclassB:父类、基类、superclass一旦声明了继承类,子类会获取父类中声明的属性和方法private权限的属性也会一并继承,只是由于权限不显示,不能影响程序的封装性子类的丰富性要大于父类规定:1、一个类可以被多个子类继承2、一个类有且仅有一个父类(单继承性)(与C++有区别,Java不支持多继承,并以接口的方式弥补
2022-03-27 20:09:18
1735
原创 this关键字、package关键字以及import关键字的使用和注意事项
this关键字this修饰属性和方法,this通常解释为目前对象可以使用“this.属性”和“this.方法”的格式来调用,通常情况下省略this,但方法的形参和类的属性同名的时候,可以使用“this.属性”来调用属性public class Person { private int age; private String name; public void sleep() { System.out.println("人会睡觉"); }
2022-03-25 14:51:59
142
原创 对象的三大性质----封装性、构造器的使用
封装性的特点:高内聚,低耦合高内聚:内部数据操作细节自己完成,不允许外部干涉低耦合:仅对外部暴露少量的方法用于使用(关键在于对private关键字的利用,使用了private声明的属性或者方法不能在类外调用)赋值操作一定会受到数据类型与存储范围的限制,加入额外的限制条件,这个条件不能在属性声明的时候体现,只能通过方法进行限制条件的添加,避免用户再次使用对象、属性的方法封装性的体现类的属性私有化(private),同时提供公共的(public)的方法来获取(getXXX)和设置(set
2022-03-24 23:33:47
484
原创 Java相关内容整理----对象、属性、类
首先对Java的模式进行解释、注:属性不属于局部变量,属性属于堆空间(属性从根本上是属于类和对象的,也算是需要new出来的结构)运用例子来说明属性、对象的数据存储public class Person{ String name; bollean isMale; int age;};public class arraytext{ public static void main(string[] args) { Person p1 = new Person(); p1
2022-03-23 16:15:20
822
原创 L1-009 N个数求和 (20 分)(c语言)
#include <stdio.h>#include <stdlib.h>int measure(int x, int y){ if (x == 0 || y == 0) { return 1; } int z = y; while (x % y != 0) { z = x % y; x = y; y = z; } return z;}int main(){ int n = 0; scanf("%d", &n); int m.
2022-03-22 12:15:08
1363
原创 Java数组相关内容复习
·引用数据类型,数组中的元素可以是任何类型的数据·Java中的数组名仍为数组的首地址·数组长度确认之后就无法改变两种初始化方式·静态初始化public class arraytext{ public static void main(string[] args) { int[] ids;//表明ids是数组,此时是声明 ids = new int[] {1, 2, 3, 4};//这一步为初始化和赋值 }};//此处初始化方式为静态初始化,数组的初始化和元素的赋值同
2022-03-22 11:54:06
786
原创 L2-017 人以群分 (25 分)(c语言实现)
该题目如下如题所示,其中会先给数据的个数,所以先进行数据的录入,利用数组来存储数据中的活跃度,同时利用一个n来记录数组中元素的个数。数据录入过程:int n1, n2, n3;int n = 0;scanf("%d", &n);int arr[100000];for (int i = 0; i < n; i++){ scanf("%d", &arr[i]);}排序在这里选用库函数自带的qsort,否则不能达到该题所要求的时间要求(测试点四),手打快排
2022-03-15 16:00:47
1969
5
原创 L1-011 A-B (20 分)
#include<stdio.h>#include<string.h>int main() { char arr[100000], brr[100000]; gets(arr); gets(brr); for (int i = 0; i < strlen(arr); i++) { if (strchr(brr, arr[i])) continue; else printf("%c", arr[i]); } return 0;}在这.
2022-03-14 17:04:49
62
原创 L2-013红色警报(C语言)与并查集相关知识
#include <stdio.h>int arr[501], cha[501];struct shuru{ int x, y;}; struct shuru shuru[5100];void join(int x, int y){ int t1 = Find(x); int t2 = Find(y); if (t1 != t2) { arr[t2] = t1; } return;}int Find(int.
2022-02-13 16:23:25
533
原创 L2-006树的遍历(C语言)
#include<stdio.h>#include<math.h>#include<stdlib.h>struct tree{ int data; struct tree* lchild; struct tree* rchild;};//建立树的结构体struct tree *creat(int arr[], int brr[], int n){ if (n == 0) { return NULL; } int i = 0; whil.
2022-02-07 21:05:58
755
原创 L2-010排座位C语言(测试点二没过)
#include<stdio.h>#include<string.h>struct peo{ int fri[102]; int di[102];}; struct peo peo[102];//建立结构体记录每一个人的朋友和死对头int main(){ int n, m, k; scanf("%d %d %d", &n, &m, &k); int arrf[102] = { 0 }, arrd[102] = { 0 }; whil.
2022-02-03 01:57:59
788
原创 L2-003月饼(c语言)
#include<stdio.h>#include<string.h>void com(float* arr,float*brr,int n){ float t = 0; float a = 0; for (int i = 0; i < n-1; i++) { for (int m = 0; m < n-i-1; m++) { if (brr[m] < brr[m+1]) { t = brr[m]; brr[m] .
2022-01-29 14:49:38
1672
原创 L1-078吉老师的回归
#include<stdio.h>#include<string.h>#include<stdlib.h>int main(){ int n, ji; scanf("%d %d", &n, &ji); char arr[1000]; n = n + 1;//在这里之所以要n+1是因为下面的gets函数会先将/n给输入字符串,所以此行作废 int zhen = 0; while (n != 0) { n--; gets(ar.
2022-01-28 21:05:11
2168
原创 L1-070吃火锅
#include<stdio.h>#include<string.h>int main(){ char arr[1000]; int n = 0; int sum = 0; int index=0;//sum记录chi1 huo3 guo1出现的次数,index记录该词段第一次出现的时间,n是录入数据的行数 while (1) { gets_s(arr); int a = strlen(arr); if (strcmp(arr,".")==0) .
2022-01-27 16:27:24
539
原创 L1-080乘法口诀数列
#include<stdio.h>int main(){ int a,b,n,i=2,j=3; scanf("%d %d %d",&a,&b,&n); long long s[n+1]; s[1]=a,s[2]=b; for(;;j++,i++) { s[j]=s[i]*s[i-1];//i控制相乘的数字,而j控制得出的数字//j无论如何相乘出的结果都会是两位数字,因为i控制的数字都是个位数 .
2022-01-26 21:15:46
420
原创 L1-079 天梯赛的善良
#include<stdio.h>#include<string.h>int main(){ int n = 0, little = 0, big = 0; scanf("%d", &n); int arr; int min = 100000, max = 0;//设置一个足够大和足够小的的数分别作为初始标准的比较对象 int tmax = 0, tmin = 0;//分别代表最大数据和最小数据的数量 for (int i = 0; i < n;.
2022-01-25 10:13:15
1087
原创 L1-020 帅到没朋友
#include<stdio.h>#include<math.h>int main(){ int arr[100000] = { 0 };//先定义一个较大的数组,并将其中的数值都初始化定义为0 int n=0,k=0; scanf("%d", &n); while (n != 0) { int m=0; n--; scanf("%d", &m); for (int i = 0; i < m; i++) { scan.
2022-01-25 09:58:28
216
原创 L1-015和奥巴马一起画方块
#include<stdio.h>int main(){ int n = 0; char m; scanf("%d %c", &n, &m); int i = 0; float k = n; int p = n / 2; k = k / 2; k = k - p; if (k >= 0.5) { p ++ ; }//在这里进行了一个四舍五入,以确定打印出来的行数 for (p; p > 0; p--) { for (int l.
2022-01-25 09:46:34
136
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人