美文网首页
数据结构

数据结构

作者: joey_zhou | 来源:发表于2019-08-24 22:00 被阅读0次

数组

连续内存顺序存储,查找O(1), 数组指定大小
动态数组,不指定大小,分配一定空间,空间不够新申请double内存,复制原来数组内容,释放原内存

考点

数组中重复的数字

二维数组的查找

顺时针打印矩阵

连续子数组的最大和

排序数组中查找数字

Pony按照字典序输出1-n的数

Pony数组所有的0移到前面,其他顺序不变

Pony旋转二维矩阵

Pony有序数列N个数,随机替换k个,求算法排序让序列仍然有序

Pony快速查询大数组中任意区间的最大值

哈希表

数组下标为哈希表key映射,值为value 通过哈希函数映射key到数组下标,查找O(1).
哈希表key通过哈希函数映射数组下标,但当key足够多,哈希函数无法一一映射数组下标顺序,出现多个key对应一个下标,此时为哈希冲突
解决哈希冲突3方法,
1是对冲突的key-下标作为数组,通过冲突项目顺序查找key
2是对冲突key-下标后移一位,
3 是将所有冲突项目单独放在新哈希表中。需要新建一个哈希表

字符串

连续字符存储, 以'\0'结尾

考点

替换空格

字符串的排列

最长不含重复字符的子字符串

翻转字符串

Pony字符串用另外字符串分割

链表

不连续内存存储,用指针把节点连成链式结构

struct ListNode{
    int value;
    ListNode* next;
}

空间效率高,新入元素加一个内存。遍历查找O(n)

考点:

删除倒数k节点

链表排序

链表反转

链表中环的入口

两个链表的第一个公共节点

Pony单链表的乘法

考点

反转链表

链表排序

删除倒数第k个节点

两个链表的第一个公共节点

根节点用指针链接多个子节点,每个子节点继续链接多个节点,形成树形结构

二叉树

每个节点链接2个子节点的树

struct ListNode{
    int value;
    ListNode* left;
    ListNode* right;
}

考点

前中后序遍历

重建二叉树

二叉树的下一个节点

树的子结构

二叉树的镜像

从上到下打印二叉树

二叉树中和为某一值的路径

二叉树的深度

Pony如何求树的直径

二叉搜索树

每个节点链接2个子节点其中左子节点小于节点,右子节点大于节点。平均搜索时间O(logn). 但是不是平衡的二叉树,根节点选取不好则导致最大搜索时间O(n)

考点

二叉搜索树的后序遍历序列

二叉搜索树与双向链表

Pony如何确定树为二叉搜索树

最大堆: 每个节点链接2个子节点其中根节点大于子节点
最小堆: 每个节点链接2个子节点其中根节点小于子节点

红黑树

每个节点链接2个子节点,节点分红与黑,红不链接红,叶子节点为黑NULL 完全二叉树,搜索性能好且稳定

先进后出的数据结构,最后push的元素第一个pop弹出
stack<template T> m_stack;

考点

两个栈实现队列

包含min函数的栈

栈的压入,弹出序列

队列

先进先出的数据结构,最先push的元素第一个pop弹出

考点

两个队列实现栈

队列的最大值


Pony n个点求面积最大四边形
Pony 黑白两类点能否找线分开

相关文章

  • IOS开发_数据结构

    1、数据结构; 2、算法; 3、数据结构与算法; 1、数据结构; 1.1 概念: 数据结构:数据结构是计算...

  • py基础

    5Python集合容器 数据结构数据结构 一般将数据结构分为两大类: 线性数据结构和非线性数据结构。 线性数据结构...

  • 思维导图之数据结构+算法

    数据结构+算法 = 程序 数据结构比较 参考文章 数据结构与算法数据结构与算法(java)

  • 数据结构与算法分析:大纲]

    00数据结构与算法分析:大纲01数据结构:数组02数据结构:链表03数据结构:栈03数据结构:队列 本系列课程主要...

  • 数据结构:数组

    00数据结构与算法分析:大纲01数据结构:数组02数据结构:链表03数据结构:栈03数据结构:队列 数组 数组是一...

  • 数据结构—概述

    数据结构概述 数据结构概述:程序设计 = 数据结构 + 算法数据结构:数据元素之间存在所有特定关系的集合,数据结构...

  • OVS 源码分析整理

    OVS 核心代码 OVS 架构 OVS 主要的数据结构数据结构关系图主要的数据结构和数据结构的参数数据结构代码 d...

  • 01. 数据结构与算法绪论

    一、数据结构 1. 什么是数据结构 2. 数据结构的分类 3. 常用的数据结构 4. 数据结构的应用表现 二、算法...

  • 数据结构与算法 - 查找

    数据结构与算法系列文章数据结构与算法 - 时间复杂度数据结构与算法 - 线性表数据结构与算法 - 树形结构数据结构...

  • C#之数据结构(上)

    数据结构 一般将数据结构分为两大类: 线性数据结构和非线性数据结构。 线性数据结构有: 线性表、栈、队列、串、数组...

网友评论

      本文标题:数据结构

      本文链接:https://www.haomeiwen.com/subject/paqcectx.html