- 博客(10)
- 资源 (2)
- 收藏
- 关注
原创 十大排序算法小结
相关博客:排序算法:冒泡排序、插入排序、选择排序、希尔排序排序算法:归并排序、快速排序排序算法:桶排序、计数排序、基数排序排序算法:堆排序 前面学习了10中最基本的排序算法,这篇博客主要是对这10种排序算法的小结:1、这十种排序算法可以分为两大类:(1)非线性时间排序算法:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比...
2019-01-30 15:50:53 2019
原创 排序算法:堆排序
相关博客:排序算法:冒泡排序、插入排序、选择排序、希尔排序排序算法:归并排序、快速排序排序算法:桶排序、计数排序、基数排序排序算法:堆排序十大排序算法小结一、堆:1、什么是堆:堆是一种特殊的树,它满足需要满足两个条件:(1)堆是一种完全二叉树,也就是除了最后一层,其他层的节点个数都是满的,最后一个节点都靠左排列。(2)堆中每一个节点的值都必须大于等于(...
2019-01-30 14:40:12 2556
原创 排序算法:桶排序、计数排序、基数排序
相关博客:排序算法:冒泡排序、插入排序、选择排序、希尔排序排序算法:归并排序、快速排序排序算法:桶排序、计数排序、基数排序排序算法:堆排序十大排序算法小结这篇博客将主要介绍三种时间复杂度是O(n)的排序算法:桶排序、计数排序、计数排序。因为这些排序算法的时间复杂度都是线性的,所以也把这类排序算法称为线性排序。之所以能够做到线性的时间复杂度,主要原因是这几个算法是非基于...
2019-01-29 19:19:07 4341
原创 排序算法:归并排序、快速排序
相关博客:排序算法:冒泡排序、插入排序、选择排序、希尔排序排序算法:归并排序、快速排序排序算法:桶排序、计数排序、基数排序排序算法:堆排序十大排序算法小结一、归并排序:1、工作原理:归并排序的采用分治思想,如果要排序一个数组,我们先把数组从中间分成前后两个部分,然后对前后两个部分分别进行排序,再将排好序的两部分合并在一起,这样整个数组就都有序了。2、动图演...
2019-01-29 17:22:45 2555
原创 排序算法:冒泡排序、插入排序、选择排序、希尔排序
相关博客:排序算法:冒泡排序、插入排序、选择排序、希尔排序排序算法:归并排序、快速排序排序算法:桶排序、计数排序、基数排序排序算法:堆排序十大排序算法小结一、冒泡排序:1、算法原理:冒泡排序只会操作相邻的两个数据。每次冒泡操作都会对相邻的两个元素进行比较,看是否满足大小关系的要求。如果不满足就让它俩互换位置。一次冒泡会让至少一个元素移动到它应该在的位置,重复n...
2019-01-28 23:27:36 5497 2
原创 《剑指offer》答案整理
第一题,二维数组中的查找:https://blog.csdn.net/a745233700/article/details/82108738第二题,替换空格:https://blog.csdn.net/a745233700/article/details/82730804第三题,从头到尾打印链表:https://blog.csdn.net/a745233700/article/det...
2019-01-21 13:35:56 2848
原创 JUC多线程:创建线程的四种方式
Java多线程的实现方式主要有四种:(1)继承Thread类,重写run();(2)实现Runnable接口,重写run();(3)实现Callable接口,实现call() 方法,通过FutureTask包装器来创建Thread线程;(4)使用ExecutorService、Callable、Future实现有返回结果的多线程。
2019-01-18 02:06:30 16049
原创 操作系统常见面试题总结
一、操作系统简介:1、什么是操作系统:操作系统本质上是一个运行在计算机上的软件程序 ,管理着计算机硬件和软件资源,为计算机硬件和软件提供了一种中间层,使应用软件和硬件进行分离,屏蔽了硬件层的复杂性,让我们把关注点更多放在软件应用上。操作系统的主要功能有:(1)进程管理:进程管理的主要作用就是任务调度,以及进程的创建销毁、阻塞唤醒、进程同步、进程通信、死锁处理等功能。 (2)内存管理:内存分配与回收、地址映射、虚拟内存以及页面的置换 (3)文件管理:有效地管理文件的存储空间,合理地组织和管理
2019-01-08 11:45:39 19598 4
原创 操作系统:经典进程同步问题 之 生产者-消费者问题、读者-写者问题、哲学家进餐问题
在进程同步中,经典的同步问题有:生产者-消费者问题、读者-写者问题、哲学家进餐问题。一、生产者与消费者问题:问题描述:使用一个缓冲区来保存物品,只有缓冲区没有满,生产者才可以放入物品;只有缓冲区不为空,消费者才可以拿走物品。1、使用信号量实现生产者-消费者问题:down : 如果信号量大于 0 ,执行 -1 操作;如果信号量等于 0,进程睡眠,等待信号量大于 0;up ...
2019-01-07 17:22:58 10489
原创 Maven(二):常用命令、依赖管理
相关阅读:Maven(一):安装与环境配置、使用Maven搭建web项目Maven(二):常用命令、依赖管理Maven(三):将web项目的war包热部署到远程Tomcat服务器Maven(四):使用maven整合Spring+SpringMVC+Mybatis框架详细步骤Maven(五):使用maven整合Struts2+Spring+Hibernate框架详细步骤...
2019-01-02 21:34:14 1570
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人