自定义博客皮肤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)
  • 收藏
  • 关注

原创 顺序表与链表练习

解析:链表的插入和删除不是所有情况下都比顺序表快,比如尾插尾删,顺序表的时间复杂度为O(1),并且如果是单链表,如果要在中间某个节点的前面插入/删除一个节点,则需要遍历。B错误:链表中的元素在内存中不一定连续,因为new的时候,会从堆上分配空间,具体分配出来的空间是否每次都连续,这个不一定。A正确:链表中节点之间是通过next引用相互指向的,故插入或者删除元素时只需要修改几个引用的指向即可,不需要搬移元素。D错误:LinkedList中插入或者删除元素,只需要修改几个引用的指向即可,不需要搬移愿意,

2024-09-07 13:04:19 1084

原创 栈的概念练习

有效长度一般是rear-front, 但是循环队列中rear有可能小于front,减完之后可能是负数,所以需要+N,此时结果刚好是队列中有效元素个数,但如果rear大于front,减完之后就是有效元素个数了,再加N后有效长度会超过N,故需要%N。选项B中,一个栈模拟入队列,一个栈模拟出队列,出队列时直接弹出模拟出队列栈的栈顶元素,当该栈为空时,将模拟入队列栈中所有元素导入即可,不是每次都需要导入元素,故错误。选项C中,一个栈模拟入队列,一个栈模拟出队列,入队列时,将元素直接往模拟入队列的栈中存放。

2024-09-04 00:16:00 788

原创 LinkedList与链表

由于在,时间复杂度为,效率比较低,因此ArrayList不适合在任意位置插入或者删除元素,因此引入了LinkedList,即链表结构。

2024-09-03 23:45:12 1185

原创 List与ArrayList

ArrayList是以泛型方式实现的,使用时需要实例化;同时ArrayList 实现了RandomAccess 接口、Cloneable接口、Serializable接口 表明ArrayList支持随机访问,可以clone,支持序列化。但是,ArrayList 在单线程下可以使用,在多线程中可以选择Vector,同时ArrayList可以动态扩容。

2024-09-03 14:50:14 554

原创 包装和类练习(1)

因为数组是有序的所以重复的元素都在一起,只需要前面的值与后面的值相比较就好了,如果不同键j向前移动,进行计数最后得到数组没有重复数字的长度。这里使用双指针法来实现,如果不是要找的val值就把值赋值给left,这样就可以排除val来计算新数组的长度。B. long和double都占了64位(64bit)的存储空间。C.默认的整数数据类型是int,默认的浮点数据类型是。,可以用包装类替代基本(简单)数据类型。Boolean就是它的包装类。声明的变量中也具有静态方法,A.基本(简单)数据类型。

2024-09-03 12:04:34 288

原创 包装和类练习 Stack的使用

A错误,如果是链栈,一般需要进行头插或者头删操作,而顺序栈一般进行尾插和尾删操作,链表的操作比顺序表复杂,,每次入栈相当于链表中头插一个节点,A.插入操作更加方便。B.删除操作更加方便。C.入栈时不需要扩容。

2024-09-01 16:56:45 289

原创 平衡二叉树(AVLTree)

平衡二叉树,又称AVL树,用于解决二叉排序树高度不确定的情况,如果二叉排序树的子树间的高度相差太大,就会让二叉排序树操作的时间复杂度升级为O(n),为了避免这一情况,为最坏的情况做准备,就出现了,使树的高度尽可能的小,其本质还是一棵二叉搜索树。

2024-08-21 15:42:12 848 1

原创 数据库约束练习(2)

5.现在有员工表、部门表和薪资表。7.已知T1和T2的字段定义完全相同,T1有5条不同数据,T2有5条不同数据,其中T1有2条数据存在表T2中,使用UNION语句查询这些数据,要求重复数据不出现。查询要求的是每个部门的信息,所以要按照部门进行分组,部门和员工为1:m,员工与薪水为1:m,查询要求有部门,有薪水,所以必须关联3张表查询。说明:查询要求的信息有部门,有人数,人数只能从员工表中获取,所以关联表为部门表/员工表。解析:关联查询没有任何条件时,是返回笛卡尔积的结果,行数为乘积,列数为两张表的列相加。

2024-08-20 10:48:07 542

原创 数据库约束练习(1)

解析:按照题目和答案中相同的部分可以知道,class字段是一个字符串,score字段是一个数值型,查询字段有class,和一个聚合函数score字段的平均值,表达的意思是,查询班级信息,以及该班级的所有分数的平均值。至少被订购过两次,说明同一个productid的产品,至少有两条数据,可以先按照productid分组,这样结果就是同一个产品的数据,再分组后过滤数据大于1行的,使用group by...having操作,进行分组后过滤。B先过滤,按照字符串比较(自然序列比较)之后的数据集,再进行分组。

2024-08-17 16:18:55 445

原创 数据库基础增删改练习

4.查询book图书表中,作者author列不为空,或者满足条件:价格price在50元以上且出版日期publish_date在2019年之后的图书信息。2.查询article文章表中,发表日期create_date在2019年1月1日上午10点30分至2019年11月10日下午4点2分的文章。3.查询article文章表中,文章标题title为空,或者满足发表日期create_date在2019年1月1日之后。1. ID在1至200或300至500,且账号accout列不为空。

2024-08-17 15:01:36 218

原创 表操作数据库练习

试想如果数据库对数据排列的要求很高,维护起来肯定要花费更高的成本,这跟设计思维是背道而驰的。解析:题面其实是在问第二个字符是A的是哪个,严格意义上只有C对,但是题面没有说明校验规则。在这个状况下,D也对。解析:%表示任意个字符,0个到∞个都行,所以小孩子才做选择,我全都要!C.前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果就可能不同。D.前后顺序不能任意颠倒,一定要按照关键字字段值的顺序排列。A.前后顺序不能任意颠倒,一定要按照输入的顺序排列。B.前后顺序可以任意颠倒,不影响库中的数据关系。

2024-08-15 23:13:02 315

原创 时间复杂度练习

A.O(n)B.O(n^2)C.O( 1 )D.O(m*n)答案:C解析:函数内部数组的大小是固定的,不论函数运行多少次,所需空间都是固定大小的,因此空间复杂度为O(1)

2024-08-08 23:09:59 272

原创 7.17题目练习

【代码】7.17题目练习。

2024-08-04 14:57:12 302

原创 8.4数据库练习

Oracle和SQL Server应该没问题,DB2是个老古董了,看见DB也应该知道是数据库了,就剩下Essbase了,故选B。,它充分体现了关系数据库语言的特性和优点”,SQL包含了DDL、DCL和DML;C选项漏掉了用户定义完整性,应为“关系模型的完整性规则是对关系的某种约束,B.DML是介于关系代数和关系演算之间的语言,它充分体现了关系数据库语言的特性和优点。C.关系模型的完整性规则是对关系的某种约束,分为实体完整性和参照完整性约束。D.关系数据库中,关系也称为数据库,元组也称为行,属性也称为列。

2024-08-04 14:55:58 139

原创 7.12-7.14练习

1.链表回文结构2.相交链表3.环形链表4.返回相遇点的值5.二叉树的前序遍历6.相同的树力扣设p有m个节点,q有n个节点,则时间复杂度为Q(m,n)的最小值。7.另一颗树的子树设root共有r个节点,subRoot共有s个节点,该方式下的时间复杂为O(r*s)。8.翻转二叉树9.对称二叉树10.平衡二叉树解法一:时间复杂度为O(n^2 )解法二:时间复杂度O(n)11.而叉搜索树与双向链表11.二叉树遍历。

2024-07-16 10:20:17 202

原创 7.8~7.10练习

【代码】7.8~7.10练习。

2024-07-12 08:35:54 338

原创 图书管理系统

【代码】图书管理系统。

2024-06-24 12:40:40 533

原创 java异常习题

解析:FileNotFoundException为IOException的子类,IOException为Exception的子类,但是代码执行时只会捕获一个异常所以可以排除其他选项,只有A是打印一个异常。A. 异常的继承结构:基类为Throwable,Error和Exception继承Throwable,RuntimeException和IOException等继承Exception。解析:testMethod()方法是由static修饰的方法通过类名进行方法调用,所以该方式是正确的。

2024-06-03 22:56:21 402

原创 java异常

处在方法声明时参数列表之后,当方法中抛出编译时异常,用户不想处理该异常,此时就可以借助throws将异常抛出给方法的调用者来处理。2.如果异常抛出的类型与catch是异常类型不匹配,即异常不会被成功捕获,也就不会被处理,继续往外抛,直到JVM收到后中段程序--异常是按照类型来捕获的。throws对异常并没有真正的处理,而是将异常报告给抛出异常方法的调用者,由调用者处理。1.方法内部如果抛出多个异常,throws之后必须跟多个异常类型,之间用逗号隔开,如果抛出多个异常类型具有父子关系,直接声明父类即可。

2024-06-03 15:01:25 990

原创 String类的相关题目

/找出最后一个空格//获取最后一个单词:从最后一个空格+1位置开始,一直截取到末尾//打印最后一个单词长度。

2024-06-02 15:57:14 635

原创 String类

由于String的不可更改性,为了方便字符串的修改,在java中提供StringBuilder和StringBuffer类。这两个类大部分功能是相同的,这里介绍StringBuilder常用的方法//hello//true//h//21 获取底层数组的总大小//设置任意位置的字符Hello world123!!");!!// 14 获取Hello第一次出现的位置(空隔也算)//21 获取0第一次出现的位置(空隔也算)!!Hello world123 删除位置1上的字符。

2024-06-01 18:29:16 551

原创 VS实用调试技巧

当我们发现程序中存在问题的时候,那下一步就是找到问题,并修复问题。这个找问题的过程称为调试,英文叫debug(消灭bug)的意思。调试一个程序首先是承认问题。然后通过各种手段去定位问题的位置,可能是逐过程的调试,也可能是隔离和屏蔽代码的方式,找到问题所在的位置,然后确定错误产生的原因,再修复代码,重新测试。

2024-06-01 16:04:53 564

原创 多态的基本知识

多态的概念:具体点就是去完成某个行为,。

2024-05-27 23:45:29 628 1

原创 关于继承的基本知识

java中使用类是对现实世界的描述,这些事物都有关联,那在设计程序时就需要考虑,比如:猫和狗,他们都是动物。如果对猫和狗进行简单描述,就会出现如下代码: 通过观察上述代码会发现,猫和狗的类中存在大量重复,那能否将这些共性进行抽取呢?面向对象思想中提出了继承的概念,专门用来进行共性抽取,实现代码复用。继承机制:是面向对象程序设计使代码可以复用的最重要的手段,它允许在保持原有类特性的基础上进行扩展,增加新功能,这样产生新的类,称派生类。继承主要解决的问题是:共性得抽取,实现代码复用。在java中,如

2024-05-26 18:17:48 721

原创 类和对象(2)

基本规则在文件的最上方加上一个package语句指定该代码在哪个包中包名需要尽量指定成唯一名字,通常使用公司的域名的颠倒形式包名要和代码路径相匹配如果一个类没有package语句,则该类被放在一个默认包中操作步骤1. 在IDEA中先创建一个包:右击src -> 新建 -> 包2.在对话框中输入包名,按enter键3.在包中创建类,右击包名->新建->类,然后输入类名称即可4.此时可以看见我们的磁盘上的目录结构已经被IDEA自动创建出来了。

2024-05-24 09:53:09 801 1

原创 类和对象(1)

在java中定义类时需要使用class关键字,具体如下采用java语言将洗衣机类在计算机中定义,经过javac编译之后形成class文件,在JVM的基础上计算机就可以识别了。//成员变量描述属性//成员方法System.out.println("洗衣功能");System.out.println("脱水功能");System.out.println("定时功能");注意事项类名采用大驼峰定义成员前统一为public此处写的方法不带static关键字。

2024-05-13 12:01:32 949 2

原创 Java作业练习回顾

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。排序之后数组为{1,1,2,3,5,5,5,6,7},我们可以发现在中间的为数组出现次数最多的数字。的值将是数组中唯一出现一次的元素的异或结果(假设只有一个元素出现一次,其他元素都出现偶数次)。输入:arr = [1,2,34,3,4,5,7,23,12]解释:存在连续三个元素都是奇数的情况,即 [5,7,23]。输入: [4,1,2,1,2] 输出: 4。

2024-05-10 10:52:48 321 1

原创 java入门编程

简易题目

2024-05-06 10:41:16 377 1

原创 猜数字游戏

如果再深入了解,我们便不难发现,其实rand函数生成的随机数是伪随机,伪随机不是真正的随机数,是通过某种算法生成的随机数。程序在调用rand函数之前先调用srand函数,通过srand函数的参数seed来设置rand函数生成随机数的种子,只要种子在变化,每次生成的随机数序列也变化起来了。rand函数会返回一个伪随机值,这个随机数的范围是在0~RAND_MAX之间,这个RAND_MAX的大小是依赖编译器实现的,但是大部分编译器上是32767。//%100的余数是0~99,0~99的数字+1,范围1~100。

2024-03-04 10:23:20 1080

原创 分支和循环(中)

在循环过程中如果某些状况发生时需要提前终止循环,c语音中提供了break和continue两个关键字,就是应该到循环中的。

2024-02-29 16:29:16 1223 1

原创 c语言大小写字母转换

通过使用标准库函数toupper()将小写字母转换为大写字母。

2024-02-16 21:32:45 193

原创 分支和循环上

分支和循环(1)

2024-02-16 21:18:56 1584 1

原创 第一次写博客--自我介绍

初学者如何规划编程语言的学习

2023-11-20 14:56:24 154 2

空空如也

空空如也

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

TA关注的人

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