自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JDBC

JDBC一、JDBC是什么?全称:Java Database Connectivity,是用于在Java语言编程中与数据库连接的API。前后端的连接是靠JDBC实现的简单来说,JDBC就是一架桥梁,用来连接java和database。有了JDBC我们才可通过java语言访问数据库表,对其进行相应的操作。二、JDBC的作用?正常来讲在java中用java语言进行各种操作,在数据库中用数据...

2019-11-09 21:07:15 192 1

原创 动态数组编程题

1.力扣54 螺旋矩阵通过找规律我们可以发现,顺时针螺旋出来的顺序就是要从数字“1”开始走,向右走到“3”,然后向下走到“9”,再向左走到“7”,再向上走到“4”,再向右走到“5”。这样走一圈,就完成了顺时针螺旋顺序。我们再找规律,向右是横坐标不变,纵坐标+1。向下是纵坐标不变,横坐标+1。向左是横坐标不变 ,纵坐标-1。向上是纵坐标不变,横坐标-1。这样我们就分析出了所有变化坐标的规律。...

2019-09-30 00:59:55 319

原创 用递归实现单向链表

链表具有天然的递归性。如图:对于链表的递归我们可以理解为:对于任何一个节点,它后面可以挂接另一个链表。该节点的后继节点可以当成另外一个链表的头结点。在这里我们写的是单向循环链表的递归。同样的,它要实现我们之前写过的List接口的方法,并且要有一个节点的内部类。这里我们从虚拟头结点开始。1.LinkedListRecursion()类public class LinkedList...

2019-09-25 16:32:04 1273

原创 二叉树基本概述

前面已经介绍过树了。废话不多说,现在我们直接来看二叉树。1.二叉树的定义

2019-09-25 02:27:42 3680

原创 树的概述

树的概述

2019-09-24 16:28:42 161

原创 汉诺塔问题

汉诺塔问题其本质就是考察递归递归之前有说过,就是把一个大规模的问题分成很多个小问题,然后再把每个小问题的解整合起来返回。那让我们直接来看这个汉诺塔问题。原题:相传在古印度圣庙中,有一种被称为汉诺塔(Hanoi)的游戏。该游戏是在一块铜板装置上,有三根杆(编号A、B、C),在A杆自下而上、由大到小按顺序放置64个金盘。游戏的目标:把A杆上的金盘全部移到C杆上,并仍保持原有顺序叠好。操作规则:...

2019-09-21 23:35:48 232

原创 递归

什么是递归?递归,我们之前把它理解为函数调用函数它本身。递归作为一种重要的编程思想。在二叉树、图或者一些高级的排序算法中,我们都会运用到递归。所以,递归很重要!一、我们首先来看一下递归的定义:递归的能力在于用有限的语句来定义对象的无线集合。问题规模较大时,递归和循环对比的话,递归比循环的代码量更少。递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条...

2019-09-21 20:24:11 225

原创 约瑟夫问题

当我们学习单向循环链表时,都会遇到类似约瑟夫环这种问题。它是对我们学习循环链表的另一种考察方式。我们来看看问题。简单概括一下:41个人围成一个环状,首尾相连。从第一个人开始报数,报到第三个人该人必须自杀。约瑟夫和他的朋友不想死,他们让自己在第16个和第31个位置,然后逃过了死亡。我们用画图的方式来看一下这个问题。我们让每个小圆代表一个人,因为41太多画不下,所以只画到第20个人。因...

2019-09-20 19:18:56 924 1

原创 单向循环链表

既然有线性表的链式存储结构,那么我们可以想到一定也有单向循环链表。下面让我们来看看单向循环链表。单向循环链表的本质就是让单链表的尾节点指针指向头结点,这样就可以让整个单链表形成一个环。这种头尾相连的单链表就叫做单向循环链表。为了方便操作,我们让头指针不再指向虚拟头结点,而是直接指向真实头结点,也就是链表中的第一个节点。此时单向循环链表因为存储结构的改变所以不能再用LinkedList ...

2019-09-20 16:23:56 1109 1

原创 队列的链式存储结构

之前写过队列和循环队列,这里就不再做多余的赘述了。队列的链式存储结构实现的关键点是让数据从尾进,从头出。这样插入和删除的时间复杂度都是O(1)了。当然队列的链式存储结构还是继承之前的Queue接口,实现LinkedList中的方法LinkedQueue类代码如下:public class LinkedQueue<E> implements Queue<E> { ...

2019-09-20 02:23:32 269

原创 栈的链式存储结构

我们不难发现。数据结构之间不是独立的关系,而是相互包含的关系。之前的线性表经过特殊的处理就可以变成栈、队列。之前已经讲过栈,这里就不用对栈在做解释了。我们直接来看栈的链式存储结构。1.LinkedStack类的定义LinkedStack类要实现之前写的Stack接口,然后这个类也是由栈的链式存储结构实现的。代码如下:public class LinkedStack<E>...

2019-09-20 00:32:46 195

原创 线性表的链式存储结构

前面学习过线性表的顺序存储结构。但它是有缺点的,最大的缺点就是插入和删除时需要移动大量元素。为了解决这个缺点,我们可以这样想。我们不再考虑元素的相邻位置,只让每个元素知道下一个元素的位置就可以合理的解决这个问题了。于是,我们有了链表这个概念。链表的节点分为两部分,为数据域和指针域。数据域存放数据元素信息,指针域存放其后继指针地址(即后继节点的存储位置)。我认为链表就好比是玩具的小火车一样,...

2019-09-19 23:32:29 773

原创 运算符和数据类型(一)

答案:D解析:本题目中 - -y的优先级较高所以先算- -y,所以y先等于4。然后x/=- -y 等于 x=x/- -y ,x和y的数据类型不一样需要转换,因为目标变量x为double;所以x=4后要转换成double类型。(1)如采用+=、*=等缩略形式的运算符,系统会自动强制将运算结果转换为目标变量的类型。(2) 当运算符为自动递增运算符(++)或自动递减运算符(–)时,如果操作...

2019-09-18 01:39:08 162

原创 动态数组选择题(二)

答案:B解析:虽然有公式是(尾-头+表长)%表长 这个公式必须要是队尾(R)指针指向最后一个元素的后一位置,也就是最后一个元素下标再加1的位置。本题具体情况是R为队尾元素位置,没有指向队尾元素的下一位置,所以这里计算循环队列元素个数的公式为(尾-头+表长+1)%表长。...

2019-09-18 01:23:21 118

原创 Linux选择题

Linux选择题答案:BC解析:grep “for” proc.c | wc -lLinux系统中的wc (Word Count) 命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。1. 命令格式:wc [选项]文件…2. 命令功能:统计指定文件中的字节数、字数、行数,并将统计结果显示输出。该命令统计指定文件中的字节数、字数、行数。如果没有给出文件名,则从标...

2019-09-18 00:48:08 170

原创

栈定义:栈是限定仅在表尾进行插入和删除操作的线性表。我们把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。栈又称为后进先出(Last In First Out)的线性表,简称LIFO结构。栈是一个线性表,但它是一种特殊的线性表。定义是在线性表的表尾进行插入和删除操作,但在这里表尾是指栈顶,而不是栈底。这中特殊就限定了这个线性表插入和删除...

2019-09-13 18:17:42 157

原创 队列

队列定义:队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列(Queue)是一种先进先出(First In First Out)的线性表,简称FIFO。允许插入的一端叫做队尾,删除的一端叫做队头。同样是线性表,队列也有类似的操作。不同的是队列是在队尾插入数据,在队头删除数据。队列的基本操作 1. getSize() 获取队列中有效元素的个数 2. isEmpty(...

2019-09-13 00:44:09 6522

原创 动态数组选择题(一)

数据结构18道选择题1本题考察栈的出栈与入栈,根据栈的后进先出有多种可能性 选择B2本题考察物理存储结构 队列和栈属于逻辑结构不用考虑 数组增和删需要挪动元素 而链表则不用 所以选择 C3从栈进 后进先出 队列属于顺序存储结构 从元素尾部入 从头部出 当e2 e4 e3出队后 还剩e1 e5 e6 出队序列为651 所以容量至少为34首先排除BD A是循环队列是基于数组实...

2019-09-12 17:18:06 239

原创 数据结构概述与动态数组

day1学习总结第一章 概述为什么要学习数据结构???我们是要用计算机解决问题,我们从具体问题中抽象出一个数据模型,设计可以解决这类模型的算法,然后在编写程序就可以得到一个实用的软件。数据:能够被计算机识别、存储和计算的东西都是数据(二进制)结构:数据与数据之间一种或多种特定的关系数据结构:数据+数据之间的关系(官方)数据结构是相互之间存在一种或多种特定关系的数据元素的集合数据结...

2019-09-08 00:00:26 143

原创 时间获取等

1.8以前Date Calendar SimpleDateFormat1.8以后:LocalDate LocalTime LocaLDateTime Instant DateTimeFormatterdate 构建date对象 输出date得到时间(系统格式时间):1.引用util.date类2.Date xx = new Date();date 获取时间戳Date xx =...

2019-07-28 19:29:51 358

原创 Java中数值转换 Numberformat使用

Numberformat (数字格式)1.货币符号指定系统预设的货币格式NumberFormat xx = NumberFormat.getCurrencyInstance();System.out.println(xx.format(nnn.nn));输出: ¥123.472.货币格式用Locale自定义国家 货币只到小数点后两位NumberFormat xx = NumberF...

2019-07-28 19:28:07 740

原创 Java中常用String方法

indexof(n) n在字符串中位置lastIndexof(n) 返回字符串中最后一个n出现的位置trim 去掉前后空格 做账号密码时用substring(n,x) 从下标为n截取到下标为x的字符串包括n z表示截取到末尾endsWith(".xxx") 以xxx为后缀的字符串startsWith() 前缀equals 比较字符串...

2019-07-28 18:19:34 124

原创 面向对象

1.什么是类?类是对具有同样性质的一类对象的抽象说明2.什么是对象?对象是这个抽象说明的类的一个具体情况3.类和对象的区别是什么?对象是类的实例,类是对具有相同特征事物的抽象4.如何定义一个类、类的属性和方法?定义类: [修饰符]class 类名{零个到多个构造器定义…零个到多个属性…零个到多个方法… }定义类的属性: [修饰符]属性类型 属性名 [=默认值] ...

2019-07-28 18:18:21 98

原创 Linux命令总结

Linux命令总结grep ‘参数’ 位置rz 上传sz 下载进入目录 双击目录 输入cmd改主机名称 hostnamectl set-hostname xxxwindow安装配置 JAVA_HOME=java的主目录 Path=path;&JAVA_HOME&/binLinux安装配置 tar -zxvf jdkxxx.tar.gz /opt ...

2019-07-28 18:16:36 76

空空如也

空空如也

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

TA关注的人

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