数据结构
  描述数据之间的关系

  行为:添加数据,删除数据,插入数据,查找数据,修改数据

  追加数据:向这个结构的末尾添加一个数据
  删除数据:在这个结构中删除你指定的数据
  插入数据:向这个结构中某一个位置插入你指定的数据
  查找数据:可以查找并访问到该数据
  修改数据:可以对该结构指定的数据进行重新赋值

  线性,链式,树状,图形,散列

  链式:是非连续的内存空间,是每个数据分成三部分 头 数据 尾

  每个数据的尾部链接下一个数据的头部

  所以在内存不是连续的空间,而是一个一个的空间,通过头尾地址
  联系在一起

集合
  Collection是C#写好的数据结构类库

  ArrayList,HashTable,Stack,Queue

  如果你要使用这些数据结构类的模板,要先引用System.Collection

  就可以通过类名去实例化它的对象

  ArrayList
  是封装过后的数组,里面的元素容器为object类型
  这样ArrayList就适用于所有的数据类型
  因为object类型是所有类的父类,又因为里氏转化原则,父类可以
  装载子类,所以ArrayList可以装载所有数据类型

  属性:
    Count:记录我当前拥有多少个元素
    Capacity:记录我当前可以包含多少个元素

  方法:
    添加 .Add(object value)
    把当前这个对象添加到数组中

    删除 .Remove(object value)
    查询此元素,并移除第一个匹配的元素项

.    RemoveAt(int index)
    根据下标号移除该元素

    插入 .Insert(int index,Object value)
    把对应对象插入到对应的下标

    访问/修改:通过索引器下标号

    排序:.Sort();

    反转: .Reverse();

    检测是否包含: .Contains(object value)
    检测该集合是否包含该元素,如果包含返回true,不包含返回false

    查找索引:.IndexOf(object value)
    找到第一个匹配该元素的下标号并返回
    如果没找到,则返回-1

c# 数据结构 ArrayList的更多相关文章

  1. Java数据结构ArrayList

    Java数据结构ArrayList /** * <html> * <body> * <P> Copyright JasonInternational</p&g ...

  2. Java数据结构-ArrayList最细致的解析笔记

    ArrayList是一个类,这个类有一个数组参数elementData,ArrayList集合中的元素正是保存在这个数组中,它继承了数组查询的高性能,参考第3篇.ArrayList还封装了很多方法,便 ...

  3. java容器的数据结构-ArrayList,LinkList,HashMap

    ArrayList: 初始容量为10,底层实现是一个数组,Object[] elementData 自动扩容机制,当添加一个元素时,数组长度超过了elementData.leng,则会按照1.5倍进行 ...

  4. JAVA数据结构--ArrayList动态数组

    在计算机科学中,动态数组,可扩展数组,可调整数组,动态表,可变数组或数组列表是一种随机存取可变大小列表数据结构,允许添加或删除元素.它提供许多现代主流编程语言的标准库.动态数组克服了静态数组的限制,静 ...

  5. [数据结构] - ArrayList探究

    一 概述 ArrayList可以理解为动态数组,与java的数组相比,它的容量能动态曾长,ArrayList是List接口的可变数组的实现,允许包括null值在内的所有元素.除了实现List接口外,此 ...

  6. 数据结构 - ArrayList

    简介 ArrayList是一个动态数组.ArrayList几乎拥有数组所有优点,例如元素有序,索引访问等:并且一般情况下它还不会越界,添加元素时它能动态扩容.平时工作中ArrayList被我们广泛应用 ...

  7. 数据结构——ArrayList的源码分析(你所有的疑问,都会被解答)

    一.首先来看一下ArrayList的类图: 1,实现了RandomAccess接口,可以达到随机访问的效果. 2,实现了Serializable接口,可以用来序列化或者反序列化. 3,实现了List接 ...

  8. Java 的 ArrayList 的底层数据结构

    1. 数据结构--ArrayList源码摘要 ublic class ArrayList<E> extends AbstractList<E> implements List& ...

  9. Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例

    概要 上一章,我们学习了Collection的架构.这一章开始,我们对Collection的具体实现类进行讲解:首先,讲解List,而List中ArrayList又最为常用.因此,本章我们讲解Arra ...

随机推荐

  1. 在 .NET 项目中集成 SwaggerUI(2018.9.30)

    不多说,直接上教程! 1. 打开NuGet管理器搜索并安装 Swashbuckle和Swagger.Net两项 2. 修改生成设置 3. 修改SwaggerConfig文件 (1)去除注释 c.Inc ...

  2. .NET实现IoC

    .NET里简易实现IoC 前言 在前面的篇幅中对依赖倒置原则和IoC框架的使用只是做了个简单的介绍,并没有很详细的去演示,可能有的朋友还是区分不了依赖倒置.依赖注入.控制反转这几个名词,或许知道的也只 ...

  3. Win10系列:C#应用控件基础7

    Slider控件 Slider控件包含一个滑动条.一个滑动块和一个取值范围,沿滑动条移动滑动块可以在取值范围内改变Slider控件的值.Slider控件的用途很广泛,例如可以使用Slider控件来设置 ...

  4. C#语句从MySQL中简单的读取数据库信息

    protected void Page_Load(object sender, EventArgs e) { //数据库+Json MyJson.JsonNode_Object json = new ...

  5. Python中的装饰器的简单介绍01

    一. 装饰器是什么? 简单来说,装饰器其实也就是一个函数,一个用来包装函数的函数,返回一个修改之后的函数对象,将其重新赋值原来的标识符,并永久丧失对原始函数对象的访问. 二.装饰器语法 (1)无参数装 ...

  6. tensorFlow(五)深层神经网络

    TensorFlow基础见前博客 上实例: MNIST 数据集介绍 MNIST 是一个手写阿拉伯数字的数据集. 其中包含有 60000 个已经标注了的训练集,还有 10000 个用于测试的测试集. 本 ...

  7. dede织梦 dede:arclist当前索引值

    {dede:arclist row='10' titlelen='50' flag='c'} <li class="rank[field:global name='autoindex' ...

  8. 二十六. Python基础(26)--类的内置特殊属性和方法

    二十六. Python基础(26)--类的内置特殊属性和方法 ● 知识框架 ● 类的内置方法/魔法方法案例1: 单例设计模式 # 类的魔法方法 # 案例1: 单例设计模式 class Teacher: ...

  9. ef core code frist

    https://docs.microsoft.com/zh-cn/ef/core/get-started/aspnetcore/new-db?view=aspnetcore-2.1 1.先创建对应的实 ...

  10. GetSystemInfo 和 GlobalMemoryStatus获取系统信息,内存信息

    // GetSystemInfo.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> #in ...