自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 常见排序算法-JS实现

常见排序算法-JS冒泡排序特点两两比较比较:N^2 / 2约等于 时间复杂度O(N^2)交换:假设比较两次交换一次,N^2 / 4 约等于 时间复杂度O(N^2)选择排序特点每轮排序选出一个最小或最大的元素再一个个插入数组比较:N^2 / 2 时间复杂度O(N^2)交换:N-1 时间复杂度O(N)所以选择排序效率上是优于冒泡排序的插入排序特点从未排序元素中挑出一个元素挨个跟局部有序的元素进行比较,找到对应位置插入即可比较次数 :平均 N(N-1

2020-07-21 16:53:02 185

原创 数据结构(七) 图JS实现

数据结构(七) 图图结构由顶点和边构成,顶点V(Vertex)表示事物,边E(Edge)表示关系,边可以有向的或无向的图的特点顶点边相邻顶点:一条边两头的顶点称为相邻顶点度:一个顶点拥有相邻顶点的数量路径:顶点V1,V2…Vn顶点构成的序列无向图:边没有方向的图有向图:边有方向的图无权图:边带有权重的图有权图:边没有权重的图图的表示方法邻接矩阵邻接矩阵可以用一个二维数组表示顶点之间的连接问题:(稀疏图)当顶点数量多而联系少时,因为二维数组会存储所有点之间的联系,所以

2020-07-21 16:44:28 281

原创 数据结构(六)树JS实现

数据结构(六)树JS实现树的特点1.相关术语节点的度(Degree):节点的子树个数个数树的度:树中所有节点里最大的度叶节点(Leaf):度数为0的节点父节点(Parent):有子树的节点,相对其子节点子节点(Child):有父节点的节点,相对其父节点兄弟节点(Sibling):具有相同父节点的子节点路径和路径长度:树从根节点到最远叶节点之间拥有的边数节点的层次(Level):根节点在1层,其他热议节点的层数是其父节点的层数加一树的深度(Depth):树中所有节点里最大层数就是这棵树

2020-07-21 16:41:41 446

原创 数据结构(五)哈希表JS实现

数据结构(五)哈希表JS实现哈希表的特点1.特点基于数组实现key值不允许重复key,value(键 : 值)形式key值可以通过哈希函数转换成下标2.优势大大提高了数据存储,删除和查询的速度**缺点:**空间利用率不高,元素是无序的,查找最值不方便3.实现哈希表的过程哈希化:将一个大的数字压缩成小数字的过程哈希函数:先将单词转换成大数字,再将大数字哈希化的过程封装进函数中,这个函数就是哈希函数哈希表:最后将数据插入到数组里对应的下标(经过哈希函数转换过的数字),

2020-07-21 16:30:54 324

原创 数据结构(四)集合-字典JS实现

数据结构(四)集合-字典JS实现特点集合是一种无序,包含的每个元素都是是唯一的数据结构。生活中常见的字典,哈希表就是集合的一种实现方式,集合常见的操作:add(value):向集合添加一个新的项;remove(value):从集合中移除一个值;has(value):如果值在集合中,返回true,否则返回false;clear():移除集合中的所有项;size():返回集合所包含元素的数量,与数组的length属性相似;values():返回一个包含集合中所有值的数组代码实现cl

2020-07-21 16:28:20 123

原创 数据结构(三)链表JS实现

数据结构(三)链表JS实现特点链表和数组一样是一种线性结构,每个节点都有指向下一个节点的指针,例如,生活中的火车,铁链,一节节地连接优点:随意扩充没有存储位置固定的限制,插入,删除的效率很高缺点:查询效率低,遍历时只能从头部开始一个个往下查询存储一个head节点指向头指针链表中的常见操作:append(element):向链表尾部添加一个新的项;insert(position,element):向链表的特定位置插入一个新的项;get(position):获取对应位置的元素;in

2020-07-21 16:27:06 122

原创 数据结构(二)队列JS实现

数据结构(二)队列JS实现特点队列是是一种受限的线性表,特点为先进先出(FIFO:first in first out)。例如买票时的排队现象元素只能从队列的头部(front)出去,队尾(rear)插入队列的另一种形式:优先级队列基于数组或链表实现队列常见操作enqueue():向队列尾部添加一个(或多个)新的项;dequeue():移除队列的第一(即排在队列最前面的)项,并返回被移除的元素;front():返回队列中的第一个元素——最先被添加,也将是最先被移除的元素。队列不做

2020-07-21 16:24:59 96

原创 数据结构(一)栈JS实现

数据结构(一)栈JS实现前言数据结构就是数据在计算机中存储的结构方式例如,一个图书馆里的书如何存储,以什么样的结构存储方便人查询,插入?常见的数据结构数组(Array)链表(Linked_List)栈(Stack)队列(Queue)哈希表(Hash)树(Tree)图(Graph)1.栈结构(Stack)栈是一种受限的线性数据结构,插入的元素要求先进后出(FILO or LIFO),计算机中的程序函数的调用就是符合栈结构先进后出常见栈操作push():添加一个元素

2020-07-21 16:23:24 180

原创 用户密码加密 MD5+Salt

用户密码加密 MD5+Salt1.设计工具类 EncrptUtil和SaltUtil类分别实现MD5散列和随机生成16位salt// 生成MD5值public class EncryptUtil { public static String md5(String plainText){ String encryStr=null; if(plainText==null&&!"".equals(plainText)){

2020-05-13 20:41:03 939

原创 MAVEN项目 完善数据库操作和持久化

MAVEN项目 完善数据库操作和持久化常用数据库操作以band表做示例INSERT INTOpublic boolean insert(Band band) { boolean res = false; try{ Connection conn = MySqlDbUtil.getConnection(); String sql = "INSERT INTO band(name,remark) VALUES (?,?)

2020-05-10 17:50:27 278

原创 数据库连接池配置

数据库连接池配置安装阿里德鲁伊驱动(数据库连接池)和mysql驱动配置德鲁伊数据连接池package cn.edu.mju.project1.persiste.impl;import com.alibaba.druid.pool.DruidDataSource;import java.sql.Connection;public class MySqlDbUtil {...

2020-04-28 10:48:49 183

原创 MAVEN配置浏览器到Servlet之间的映射

MAVEN配置浏览器到Servlet之间的映射第一种方法在web.xml文件中配置servlet映射标签<web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>loginContr...

2020-03-30 22:44:09 249

空空如也

空空如也

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

TA关注的人

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