算法复杂度评价指标(大o表示法)

大O表示法

    • (1)常见的大o数量级函数
    • (2)其他算法复杂度表示法

基本操作数量函数T(n)的精确值并不是特别重要,重要的是Tn(n)中起决定性因素的主导部分。用动态的眼光看,就是当问题规模增大的时候,T(n)中的一些部分会盖过其他部分的贡献。
数量级函数描述了T(n)中随着n增加而增加速度最快的主导部分,称作“大O”表示法,记做O(f(n)),其中f(n)表示T(n)中的主导部分。

在这里插入图片描述
在这里插入图片描述

(1)常见的大o数量级函数

在这里插入图片描述

(2)其他算法复杂度表示法

在这里插入图片描述

热门文章

暂无图片
编程学习 ·

连续子数组的最大和

一、问题描述 给定一个数组, 找出数组的一个连续子数组, 这个子数组的和最大; 遍历数组,将数组的值加入到sum中, 如果sum大于0, 继续遍历下一个数据, 如果sum小于等于0,说明前面的子数组是无用的,丢弃前面的数组,从下一个数组开始继续遍历; 二、连续子数组的最大和代…
暂无图片
编程学习 ·

C语言 介绍

一.C的历史 编程语言的发展过程: 第1代语言 机器语言↓ 第2代语言 汇编语言↓ 第3代语言 高级语言——结构化:C,Fortran,Basic,Pascal↓分界线:1980s面向对象(OO):Algo,Simula67,Ada,SmallTalkC++,Java,C#结构化语言的缺陷: 操作和数据是分离的C语言的起源: 1969…
暂无图片
编程学习 ·

Spring Boot 整合 Redis

Redis 基于内存进行存储,支持key-value的存储形式,底层是C 基于key-value形式的数据字典,没有数据表的概念,直接用键值对的形式完成数据管理 支持五种数据类型:字符串列表集合有序集合哈希安装Redis 1.下载Redis:https://redis.io/download 2.解压并在本地硬盘人任意位置…
暂无图片
编程学习 ·

元注解

元注解 元注解时定义注解的注解,是Java提供的用于定义注解的基本注解注解 说明@Retention 是注解类,实现声明类Class,声明类别Category,声明扩展Extension@Target 放在自定义注解上的上边,表明该注解可以使用的范围@Inherited 允许子类继承父类的注解,在子类中可以获取使…
暂无图片
编程学习 ·

leetcode-123. 买卖股票的最佳时机 III

题目 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [3,3,5,0,0,3,1,4] 输出: 6 解释: 在第 4…
暂无图片
编程学习 ·

小程序自定义导航栏

记录下大神写的导航栏组件源自:https://juejin.im/post/5d557e2e5188255af1619716小程序改组件的下载链接:https://github.com/lingxiaoyi/miniprograms-navigation-bar
暂无图片
编程学习 ·

线程池

目录概念优点架构线程池三种常用创建方式newFixedThreadPoolnewSingleThreadExecutornewCachedThreadPool线程池底层原理线程池工作流程线程池的拒绝策略自定义线程池 概念 线程池主要是控制运行线程的数量,将待处理任务放到等待队列,然后创建线程执行这些任务。如果超过了最…
暂无图片
编程学习 ·

css 垂直居中

我们知道在css中有元素的水平、垂直居中,而对元素水平居中是很简单的: 如果是行内元素,则对它的父元素采用text-algin:center;如果是一个块级元素则采用margin: auto。 但是提到元素的垂直居中,情况并不是这么良好。特别是在元素尺寸不固定的时候,更难处理。html代码: …
暂无图片
编程学习 ·

postman引入文件实现参数化及中文乱码问题解决

1、首先,在postman中输入地址和参数,保证接口请求成功。可以在tests中添加断言2、将需要参数化的参数用变量表示,并将变量添加进全局变量中3、将需要参数化的参数写成CSV,TXT,JSON格式的文档。这里用的是csv格式的文件,其中name是变量名如果用txt格式的文件,多参数之间要用…
暂无图片
编程学习 ·

第三章 第一个Java程序 世界你好

学习了前面的两章内容,我相信小伙伴们对于Java有了一定的认识。那么怎么写一个基本的Java程序呢?接下来,我们就通过一个最基本的最简单的程序来看看。在书写代码之前呢?我先介绍几款编译器,也就是常用的代码书写工具。可能有的小伙伴会说,一开始学习不是应该用记事本,然…
暂无图片
编程学习 ·

Git上传项目到GitHub

windows上传文件到github的方法 文章目录windows上传文件到github的方法一、创建github的账号:二、安装git:三、上传简单来说就是以下几个命令:Git常见错误与操作:error: src ref spec master does not match any以及failed to push some refs to 。。。解决办法,再来一遍…
暂无图片
编程学习 ·

liunx-搭建hadoop(2.7.1)和使用

1.搭建 1.集群jdk安装 配置JDK环境变量在局域网中关闭防火墙 service iptables stop设置主机映射 1. 打开配置文件vim /etc/hosts 2. 内容192.168.80.111 server1192.168.80.112 server2192.168.80.110 server3配置SSH免密登录 1. 生成私钥ssh-keygen -t dsa -P -f ~/.ssh/id_…
暂无图片
编程学习 ·

JavaScript按位运算符

按位运算符将其操作数当做32位的比特序列(由0和1组成),而不是十进制、十六进制或八进制数值。 我们主要了解的有七种,分别是:&、|、^、~、<<、>>、>>>。 按位与运算符 按位与 & 运算符,对两个 32 位表达式的每一位执行按位与运算。如果a 和…
暂无图片
编程学习 ·

Java中的JDBC编程

Java中的JDBC编程JDBC的工作原理JDBC的使用JDBC常用接口和类数据库连接ConnectionStatement对象ResultSet对象 JDBC的工作原理JDBC,即Java Database Connectivity,java数据库连接。是一种用于执行SQL语句的Java API,它是Java中的数据库连接规范。这个API有java.sql.* ,javax…
暂无图片
编程学习 ·

Linux添加新硬盘、分区、格式化、自动挂载

Linux添加新硬盘、分区、格式化、自动挂载在为主机添加硬盘前,首先要了解Linux系统下对硬盘和分区的命名方法。1) 在Linux下对SCSI的设备是以sd命名的,第一个ide设备是sda,第二个是sdb,依此类推。一般主板上有两个SCSI接口,一共可以安装四个SCSI设备。主SCSI上的两个设备分…
暂无图片
编程学习 ·

自定义js封装

网上搜索了很多,一顿整合,目前觉得比较合适的 才用 闭包 + 原型模式 结构记录如下 :;(function(undefined){ use strict;var _global;var defaultSetting = {};var tools={};var checkbox = function (settings){if(!(this instanceof checkbox)){return new checkbox()};…