`
bld
  • 浏览: 4443 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

数组与大O表示法

阅读更多

 

为了处理方便,把具有相同类型的若干变量按有序的形式组织起来,这些按序排列的同类数据元素的集合称为数组。一般一个数组中的所有元素具有相同的数据类型。

数组分有序数组和无序数组。

数组数据的插入: 直接通过下标进行插入。一般数组中包含一个当前元素个数的变量。时间复杂度O(1)

数组数据的查找:按顺序进行比较。时间复杂度O(N),有序数组可使用二分法进行查找。时间复杂度O(logN)

数组数据的删除:先查找,然后删除,再将后面的元素前移。时间复杂度O(N)


大O表示法:表示时间与数据规模(数量)之间的关系在那个的量级,大O表示法中忽略了计算时间公式中的常数,只是从随着规模增大,时间将会以那种量级进行增长来表示算法速度,所以时间计算公式中 T=24*K*N 跟 T=N 跟 T=N/56 都被表示为O(N),24*K,1,1/56都被舍弃了。大O表示法中一般的量级有:O(1),O(N),O(logN),O(N*logN),O(N*N)

 

0
0
分享到:
评论

相关推荐

    《Java数据结构和算法》学习笔记(1)——数组 二分法 大O表示法

    NULL 博文链接:https://yuan.iteye.com/blog/301491

    Java常用算法手册

    1.大O表示法:粗略的量度方法即算法的速度是如何与数据项的个数相关的 算法 大O表示法表示的运行时间 线性查找 O(N) 二分查找 O(logN) 无序数组的插入 O(1) 有序数组的插入 O(N) 无序数组的删除 O(N) 有序...

    JAVA数组学习教程

    学习JAVA数组的好文档。 内容包括: Java中数组的基础知识 将程序划分成类 类接口 有序数组的Java代码 对数 存储对象 大O表示法 为什么不用数组表示一切

    二分搜索法

    4. 比较目标元素与数组中间元素的大小,如果目标元素小于中间元素,则将高位下标设为 mid - 1,否则将低位下标设为 mid + 1。 5. 重复步骤 3 和 4,直到找到目标元素或 low > high。 6. 如果找到目标元素,则返回其...

    Java语言-数据结构与算法视频教程 (第一部分)

    |____05.JavaDS_存储对象的数组和大O表示法.mp4 |____04.JavaDS_有序数组和二分查找.mp4 |____03.JavaDS_数组基础知识.mp4 |____02.JavaDS_数据结构和算法的概述.mp4 |____01.NetBeans_下载和安装.mp4

    C++数据结构与算法

     2.3 大O表示法的性质  2.4 Ω表示法与Θ表示法  2.5 可能存在的问题  2.6 复杂度示例  2.7 确定渐近复杂度示例  2.8 最好、平均和最坏情况  2.9 摊销复杂度(amortized complexity)  2.10 NP完整性  2.11...

    [详细完整版]数据结构描述.doc

    一、数据结构描述: 1. 插入操作:对于一般数组(不包括有序数组)而言,插入... 二、效率的比较: 由上面的描述可以看出,对于一般数组的插入操作,消耗时间用大O表示法为:O(1) ,即消耗常数的时间。而删除操作和查

    数据结构与算法:C#语言描述

    本书介绍的方法非常实用,采用了时间测试而非大O表示法来分析算法性能。内容涵盖了数据结构和算法的基本原理,涉及数组、广义表、链表、散列表、树、图、排序搜索算法以及更多概率算法和动态规则等高级算法。此外,...

    C语言FAQ 常见问题列表

    o 3.10 我的编译器在结构中留下了空洞, 这导致空间浪费而且无法与外部数据文件进行 "二进制" 读写。能否关掉填充, 或者控制结构域的对齐方式? o 3.11 为什么 sizeof 返回的值大于结构的期望值, 是不是尾部有填充? ...

    数据结构与算法

    《数据结构与算法C#语言描述》介绍的方法非常实用,采用了时间测试而非大O表示法来分析算法性能。内容涵盖了数据结构和算法的基本原理,涉及数组、广义表、链表、散列表、树、图、排序搜索算法以及更多概率算法和...

    《数据结构与算法(C#语言描述)》源码

    本书介绍的方法非常实用,采用了时间测试而非大O表示法来分析算法性能。内容涵盖了数据结构和算法的基本原理,涉及数组、广义表、链表、散列表、树、图、排序搜索算法以及更多概率算法和动态规则等高级算法。此外,...

    数据结构与算法C#语言描述(中文)

    《数据结构与算法C#语言描述》介绍的方法非常实用,采用了时间测试而非大O表示法来分析算法性能。内容涵盖了数据结构和算法的基本原理,涉及数组、广义表、链表、散列表、树、图、排序搜索算法以及更多概率算法和...

    Python 超详细算法与数据结构视频教程

    算法分析,时间复杂度 大O 表示法 哈希表,散列冲突 字典 集合 递归 查找:线性查找和二分查找 基本排序算法: 冒泡、选择、插入排序 高级排序算法: 归并排序、快排 树,二叉树 堆与堆排序 优先级队列 二叉查找树 图...

    数据结构导论串讲笔记.doc

    例如,给出一棵树,我们可以画出该树的双亲表示法、孩子链表表示法、带双亲的孩子链表表示法和孩子兄弟链表表示法的示意图。 树的遍历 树的遍历有三种:先根遍历、后根遍历和层次遍历。先根遍历是指先访问根结点,...

    java数据结构与算法第二版

    大O表示法 为什么不用数组表示一切? 小结 问题 实验 编程作业 第3章 简单排序 如何排序? 冒泡排序 选择排序 插入排序 对象排序 几种简单排序之间的比较 小结 问题 实验 编程作业 第4章 栈和队列 ...

Global site tag (gtag.js) - Google Analytics