自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 快速排序实现与优化(单路、二路、三路)

一.快速排序的思想快速排序的基本思路是在每一趟排序中,选择一个标定值,将小于标定值的元素放在该元素前面,大于标定值的元素放在该元素后面,即每一趟确定了一个元素的位置。然后递归执行标定元素左右两侧的区间。二.快速排序的实现与优化1.基础的快速排序实现(单路快速排序)#include"iostream"#include"time.h"using namespace std;temp...

2020-04-10 16:30:22 225

原创 堆的实现以及堆排序(最大堆,最小堆)

1.堆的概念堆是一种特殊的数据结构,相当于数组实现的一颗二叉树,但是和一般的二叉搜索树不同1.堆分为最大堆(父结点不小于其孩子结点)和最小堆(父结点不大于其孩子结点),分别表示最大堆和最小堆只是>和 < 的关系template<typename T>class ...

2020-04-02 08:51:41 729

原创 Mybatis参数传递测试与总结

Mybatis参数传递一.单参数传递接口中方法声明对应的mapper占位符中写任意参数名都可以传参成功Mybatis对于单参数而言,是直接进行赋值的,不考虑具体的参数名对应关系二.多参数传递1.Mybatis对于多参数传递的默认支持 如果mapper中参数直接写成接口中的形参,则会报错从报错中可以看出 会将对应的参数名转化为索引(arg0,arg1····)或是参数个...

2020-03-30 12:29:32 210

原创 深刻理解mysql四种隔离级别

一.四种隔离级别1.read uncomitted(读取未提交)A事务可以读取到B事务未提交的数据,如果B事务rollback,那么A事务此前读取到的数据就是没有意义,也称为脏读。2.read committed(读取已提交)A事务只能读取已提交的数据,解决了read uncommitted中的脏读问题,但是A事务在两次读的过程中,可能会出现B提交事务的情况,导致A的两次读操作结果不...

2020-03-26 11:25:50 1599

原创 mysql中char(N)和varchar(N)的区别

1.char类型char是定长类型 输入长度小于声明时的长度 会在末尾自动补空格 输入长度超过则会截断char(n) n取值范围0~255输出时会自动截断末尾添加的空格串2.varchar类型varchar是不定长类型 varchar(n) n范围0~65535 指其能保存数据的最大字符数varchar类型实际使用字节数为数据所占字节数+长度所占字节数其中数据所占字节数 ...

2020-03-25 12:18:58 691

原创 位、字节、字符、编码、字、字长的关系

1.位(B)位指二进制中的一位 0或1 是计算机系统中数据的最小单位2.字节(Byte)一字节=8位3.字符和编码不同编码中 1字符所占字节是不同的①ASCII码中,一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算为十进制。最小值0,最大值255。②UTF-8编码中,一个英文字符等于一...

2020-03-25 11:42:30 2553

原创 java程序从编译到运行

一.编译过程使用javac 编译程序java源文件被jvm中的编译器编译为.class文件(byteCode)当编译某个类时,如果该类依赖的类还没有编译 ,则会去优先编译依赖的类,然后引用编译后的byteCode文件包含常量池和方法区两部分常量池主要包括源文件中的常量、类名、成员变量等以及符号引用(类引用、方法引用等)方法区主要包括各个方法的字节码二.运行过程java +运行过程...

2020-03-17 13:41:23 252

原创 求逆序对个数问题

问题:求一组无序的元素中逆序对的个数例:5 4 3 2 1 (5,4) (5,3)(5,2)—(3,2)(3,1)(2,1)传统解决思路双层for循环 时间复杂度O(n^2)//类似于选择排序void test(int *arr,int n){ int count=0;//计数 for(int i=0;i<n-1;i++){ int flag = arr[i]; fo...

2020-03-17 00:00:54 255

原创 并查集算法解决亲戚问题

题目:亲戚若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易。 现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系。 我们规定:如果x和y是亲戚,y和z是亲戚,那么x和z也是亲戚;如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。输入第一行:三个整数n,m,p,(n≤5000,m≤5000,p≤5000),分别表示有n个人,m个亲戚关系,询问p对亲戚关系。...

2020-03-16 23:10:48 610

原创 归并排序的递归实现(自顶向下)以及迭代法(自底向上)

写完了时间复杂度O(n^2)的几大经典排序算法,接下来开始写时间复杂度O(nlogn)的排序算法这篇文章先介绍归并排序的递归实现以及迭代实现1.概念归并排序采用分治的思想,将一组无序的数据平均分为多个小块,分到极限时,每一块仅包含1个数据,此时每块都是有序的。接下来进行归并操作。下图为维基百科gif图2.递归实现template<typename T>void __mer...

2020-03-06 17:17:12 794

原创 数据结构之插入排序及希尔排序

上文介绍了时间复杂度o(n^2)的3种常见排序算法希尔排序就是基本插入排序实现的该方法的基本思想是:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。因为直接插入排序在元素基本有序的情况下(接近最好情况),效率是很高的。根据增量选定的不同 希尔...

2020-03-01 20:50:14 67

原创 数据结构之时间复杂度o(n^2)的排序算法

时间复杂度o(n^2)的排序算法包括选择排序、插入排序、冒泡排序c++语法实现如下:1.选择排序template<typename T>void selectionSort(T arr[],int n){ for(int i=0;i<n;i++){ int minIndex = i; for(int j=i+1;j<n;j++...

2020-02-29 11:06:01 1193

原创 Tom数

1.问题描述正整数的各位数字之和称为Tom数。求输入n, n≤231−1的Tom数!2.输入每行一个整数n ,n≤231−1.3.输出每行一个输出,对应该数的各位数之和.样例输入:123455612382样例输出:1517104.解题import java.util.*;public class Main { public static void main(St...

2019-06-19 22:35:23 662

原创 AC了吗

1.题目描述小明遇到了一件很郁闷的事。在ACM题库中,题目编号含有2,3,5以外的质因子的题目小明都没有通过,反之则全部通过。2.输入输入有多组数据。每组数据一行,1个正整数(不大于1000000000),代表题目号。3.输出对应每组数据,如果小明通过了这道题目,则输出Accepted,否则输出Wrong。样例输入:15204757样例输出:AcceptedAccep...

2019-06-19 22:04:25 203

原创 数据结构之顺序表

c语言实现顺序表的基本功能1.顺序表的描述#define maxsize 30typedef int DataType;typedef struct{ int length; DataType data[maxsize];}Sqlist;2.初始化void createList(Sqlist *L){ int i; printf("请输入顺序表初始化长度:"); scan...

2019-06-19 21:31:38 126

原创 不带头结点的单链表的就地逆置算法

typedef struct node{ struct node *next; int data;}*LinkList,NODE;LinkList reverseList(LinkList head) LinkList p,q,l; q=head; L=head; p->next=NULL; while(L){ L=L->next; q->next=p...

2019-06-18 23:13:01 7858 6

原创 数据结构之线性表篇

数据结构之线性表篇一.线性表的链式存储1. 结点的描述typedef struct node{ int data; struct node *next;}NODE,*Linklist;//等价于 define NODE *Linklist;2.单链表的创建LinkList createList(){ LinkList head;//生成头结点 head...

2019-06-12 21:12:51 137

空空如也

空空如也

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

TA关注的人

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