摘要:
1、题目描述: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 2、代码实现: 阅读全文
摘要:
1、HTTP的介绍 HTTP协议(超级文本传输协议)是用于从WWW服务器传输超级文本到本地浏览器的传输协议。 2、计算机之间相互通信的过程 实际上,两台计算机之间的通信是通过TCP/IP协议实现的,TCP : Transmission Control Protocol 传输控制协议和IP: Inte 阅读全文
摘要:
package com.baozi.dynamicproblem; /** * 01背包问题--动态规划思想解决 * * @author BaoZi * @create 2019-07-06-10:51 */ public class KnapsackProblem { public static void main(String[] args) { int[... 阅读全文
摘要:
1、KMP算法的介绍: KMP算法的提出是为了解决字符串匹配问题,我们当然可以使用暴力方法来判断一个文本字符串中是否包含给定的字符串,但是使用暴力方法会存在大量的回溯,时间效率特别低。KMP算法是一种改进的字符串匹配算法,KMP算法的关键是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快 阅读全文
摘要:
1、归并排序的介绍 百度百科:归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称 阅读全文
摘要:
1、Shell排序算法的介绍 希尔排序,也称递减增量排序算法,是直接插入排序算法的一种高速而稳定的改进版本。 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。 先取一个小于n的整数d1 阅读全文
摘要:
1、快速排序的简单介绍 算法思想:基于分治的思想,是冒泡排序的改进型。首先在数组中选择一个基准点(该基准点的选取可能影响快速排序的效率,后面讲解选取的方法),然后分别从数组的两端扫描数组,设两个指示标志(low指向起始位置,high指向末尾),首先从后半部分开始,如果发现有元素比该基准点的值小,就交 阅读全文
摘要:
1、插入排序算法的介绍 通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应的位置并插入。 假定n是数组的长度,首先假设第一个元素被放置在正确的位置上,这样仅需从1-(n-1)范围内对剩余元素进行排序。对于每次遍历,从0-(i-1)范围内的元素已经被排好序,每次遍历的任务是:通过扫 阅读全文
摘要:
1、冒泡排序算法 2、快速排序算法 3、插入排序算法 4、选择排序算法 5、归并排序算法 6、Shell排序算法 7、基数排序 8、堆排序 阅读全文
摘要:
1、选择排序算法的介绍 选择排序是一种简单直观的排序算法,其基本原理如下:对于给定的一组记录,经过第一轮比较后得到最小的记录,然后将该记录的位置与第一个记录的位置交换;接着对不包括第一个记录以外的其他记录进行第二次比较,得到最小记录并与第二个位置记录交换;重复该过程,直到进行比较的记录只剩下一个为止 阅读全文