排序 分类 外排序:由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行(k路归并) 内排序:所有操作再内存就可以完成 比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。 非比较类排序:不通过比较来决定元素间的 ...
分类:
编程语言 时间:
2021-06-08 22:35:45
阅读次数:
0
时间复杂度:o(logn) 支持: 1.单点修改 2.区间查询:查询一个区间内所有元素的和 对 进行区间查询只需查询 和 然后相减即可(前缀和就是这样进行区间查询的),所以我们可以把区间查询问题转化为求前n项和的问题。 可以用一个数组 维护若干个小区间,单点修改时,只更新包含这一元素的区间;求前n项 ...
分类:
编程语言 时间:
2021-06-06 19:25:12
阅读次数:
0
##原理 ###哈希表的结构 哈希表又被称为数组链表。当插入删除操作和取值操作都较频繁时,我们可以采用哈希表来作为集合的数据结构。 定义:哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录, ...
分类:
编程语言 时间:
2021-06-06 19:14:07
阅读次数:
0
LeetCode 2. Add Two Numbers(两数相加) 题目 链接 https://leetcode-cn.com/problems/add-two-numbers 问题描述 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 ...
分类:
其他好文 时间:
2021-06-06 18:53:03
阅读次数:
0
一、总结分析自己实现规格要求所采取的设计策略 首先分析要抛出哪些异常情况,把异常情况都抛完了再处理正常情况。 先通过JML读懂这个函数要实现什么功能,然后考虑有没有时间复杂度更优的实现方法。 二、基于JML规格来设计测试的方法和策略 JUnit:JUnit是一个开放源代码的Java测试框架,用于编写 ...
分类:
其他好文 时间:
2021-06-02 19:10:46
阅读次数:
0
##哈啰(一面) ###总结: 1.语言表达能力不行,语气词太多了(然后,就是)! 2.面试官问一个问题,自己不能马上回答出来,还是掌握或者是记忆不深刻吧。 3.自己有时候在抢答,本来可能面试官想给我点提示的,但是我又很想把自己正在说的说下去,导致面试官没法插上话? 4.逻辑、思路不清晰,回答问题要 ...
分类:
其他好文 时间:
2021-06-02 17:51:40
阅读次数:
0
#索引 ##索引的功能 当表中有大量记录时,若要基于某些过滤条件对表进行查询,就需要遍历整张表和查询条件进行对比,返回满足条件的记录。使用暴力搜索的时间复杂度是 O(n),同时频繁访问磁盘,当数据量达到一定的规模时(一般是 10 万级别以上)效率很低。 索引是对数据表中一列或多列的值进行排序的一种结 ...
分类:
数据库 时间:
2021-06-02 15:23:54
阅读次数:
0
1. 什么是时间复杂度 「时间复杂度是一个函数,它定性描述该算法的运行时间」。 我们在软件开发中,时间复杂度就是用来方便开发者估算出程序运行的答题时间。 通常,我们会估算算法的操作单元数量来代表程序消耗的时间,这里默认CPU的每个单元运行消耗的时间都是相同的。 比如说: //这个程序中,我们估算 d ...
分类:
编程语言 时间:
2021-06-02 14:02:48
阅读次数:
0
#include<stdio.h> int main(){ int n; cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; for(int i=1;i<=n;i++)cin>>b[i]; int x=1,y=1,tot=0; while(x<=n&&y<=n){ if( ...
分类:
编程语言 时间:
2021-06-02 13:49:15
阅读次数:
0
时间复杂度:O(N2) 空间复杂度:O(1) 稳定性:稳定 // 冒泡排序 void bubble_sort(int list[], int listSize) { int i, j, flag; int temp; for (i = listSize - 1; i >= 1; --i) { fla ...
分类:
编程语言 时间:
2021-06-02 13:42:30
阅读次数:
0