zoukankan      html  css  js  c++  java
  • 数据结构一

    线性结构

      连续存储【数组】

      离散存储【链表】

      线性结构的两种常见应用:栈,队列

    衡量算法的标准:

       1.时间复杂度:大概程序要执行的次数,而非执行的时间
       2.空间复杂度:算法执行过程中大概所占用的最大内存
       3.难易程度
        4.健壮性
      数据结构的地位:
                  数据结构是软件中最核心的课程
              程序=数据的存储+数据的操作+可以被计算机执行的语言
    #include<stdio.h>
    
    void Show_Array(int *p,int len)//a为取地址,5长度
    {
        p[0] = -1;//p[0] == *p
    }
    int main(void)
    {
        int a[5] = {1,2,3,4,5};
        Show_Array(a,5);//  a等价于&a[0],&a[0]本身就是int *类型
        
        printf("%d
    ",a[0]);
        return 0;
    }
    预备知识:
                指针
                    int   *   p;//p是个变量名字,int   * 表示p变量只能存储int类型变量的地址
                   定义
                            地址:内存单元的编号
                            从0开始的非负整数   范围0-----4G-1
                            指针:指针就是地址,地址就是指针
                                        指针变量是存放内存单元地址的变量
                                        指针的本质是一个操作受限的非负整数
    注意:
                1.指针变量也是变量,只不过它存放的不能是内存单元的内容,只能存放内存单元地址
                2.普通变量前不能加*
                3.常量和表达式前不能加&    (&是取地址符)
     
    下标和指针的关系: a[i] 《==》 *(a+i)
     
                结构体
                动态内存的分配和释放
                
  • 相关阅读:
    前端开发者进阶之ECMAScript新特性--Object.create
    JS事件:target与currentTarget区别
    30分钟掌握ES6/ES2015核心内容
    百度跨域搜索demo
    <a>标签的SEO优化细节
    jQuery之异步Ajax请求使用
    小tips: zoom和transform:scale的区别
    JSP页面静态化总结之一使用URLRewrite实现url地址伪静态化
    web前端安全机制问题全解析
    【转】Asp.net MVC Comet推送
  • 原文地址:https://www.cnblogs.com/pig1314/p/8652812.html
Copyright © 2011-2022 走看看