(1)常用排序算法Class MySort { /* * 所有排序均按升序排序 * */ /** * 插入排序 * @param $arr * @param $st * @param $ed * 通过将元素插入到已排序的序列中不断扩大已排序的序列 */ public function Ins
转载 2023-07-03 14:57:08
40阅读
当你开始学习编程,了解和掌握基础数据结构是至关重要的,因为它们是解决问题和管理数据基础。本文将重点介绍Python中的五个基础数据结构:列表、元组、字典、集合和字符串,并使用示例代码进行详细说明。列表(List) 列表是一种有序、可变的数据结构,它允许你存储多个元素,这些元素可以是不同类型的数据。创建列表使用方括号 [],并在其中包含元素,元素之间用逗号 , 分隔。my_list = [1, 2
原创 2023-10-20 08:46:46
158阅读
一. 概述 1. 理解 1.1 数据结构与算法的关系 数据结构是一门研究组织数据方式的学科,有了编程语言也就有了数据结构。 程序 = 数据结构 + 算法 数据结构是算法的基础 1.2 线性结构和非线性结构 线性结构 作为最常用的数据结构,特点是数据元素之间存在一对一的线性关系。 包含两种不同的存储结 ...
转载 2021-10-10 18:42:00
151阅读
2评论
1.数组动态扩缩容数组的实现package mainimport ( "bytes" "fmt")type Array struct { data []interface{} size int}func New(capacity int) *Array { return &Array{ data: make([]interface{}, capa
原创 2022-08-24 16:05:39
410阅读
单链表class Node { int val; Node next; Node(int val) { this.val = val; }}
原创 2021-08-24 14:41:13
213阅读
一、队列二、栈三、并查集四、Hash表五、堆
原创 2022-02-03 14:10:52
76阅读
逻辑结构和物理结构记录一下最近开始学习的数据结构与算法逻辑结构是指数据对象中数据元素之间的相互关系。集合结构集合结构数据元素,除了都属于一个集合外,无其它关系线性结构数据元素之间是一对一的关系树形结构数据元素之间存在一对多的关系圆形结构数据元素存在多对多的关系物理结构数据的逻辑结构在计算机中的存储形式顺序存储结构字面意思,把数据元素存放在地址连续的存储单元中链式存储结构数据元素将存放在任意位置,
原创 2023-07-30 15:04:20
111阅读
排序相关的基本概念快速排序、希尔排序、堆排序、直接选择排序不是稳定的排序算法。基数排序、冒泡排序、直接插入排序、折半插入排序、归并排序是稳定的排序算法。内排序:在排序期间数据对象全部放在内存中的排序外排序:排序期间全部对象个数太多,不能同时存放在内存,必须根据排序过程的要求,不断在内外存中移动排序.桶排序:适合max很小的情况 1.建议一堆bucket...
原创 2021-06-11 21:13:46
271阅读
第一章 概述(1)什么是数据结构和算法   数据结构是对内存或者是磁盘上数据的一种安排有序,折半查找快。插入,删除效率低,大
原创 2022-08-26 14:40:07
151阅读
数据结构与算法(基础数据结构-数组)1.数组的定义所谓数组,是有序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。这些无序排列的同类数据元素的集合称为数组。int 的数组你就不能存float 也不能存double数组是用于储存多个相同类型数据的集合。通常用Array表示,也称
原创 2022-01-13 14:45:19
382阅读
一、javascript基础 1.javascript的数据类型有:数字、字符串、函数、对象、undefined、null和数组、日期、正则表达式。 2.变量作用域:本地变量和全局变量。在一个函数里,变量没有使用var 关键字,则是申明或者引用了全局变量。 3.转换为布尔值为假值的有 |undefined| |-null-| | +0,-0,NaN | "" 空字符串 4.创建对象两种方式:构造函
前言python中基础数据结构,如果不经常使用,很容易忘记,本文带你复习python中数据结构的所有基本操作一. Python数据类型1. 数字类型 int > 1, 0 2. 字符串类型 string > '', " ", "hello world" 3. 列表 list > [], [1, 2, 3], [1, 2, [2, 3]] 4. 元组 tuple &gt
转载 2023-08-30 16:15:35
61阅读
js中的数据结构1、列表   待办事项列表、购物清单、最佳十名榜单等等。  适用:     1)数据结构较为简单,     2)不需要在一个长序列中查找元素,或者对其进行排序2、栈  一摞盘子 ----- 添加删除只能从最上面。   特点:栈被称为一种后入先出的数据结构。是一种高效的数据结构,因为数据只能在栈顶添加或删除,所以这样的操作很快。   适
转载 2023-06-07 13:58:35
66阅读
1.数据的特点:可以输入到计算机,可以被计算机程序处理2.数据是一个抽象的概念,将其进行分类后得到程序设计语言中的类型。如:int float char等等3.数据元素-组成数据的基本单位,数据项:一个数据元素由若干数据项组成4.数据对象 —性质相同的数据元素的集合5.数据元素之间不是独立的,存在特定的关系,这些关系即结构6.数据结构数据对象中数据元素之间的关系,编写一个“好”的程序之前,必须分
原创 2016-10-15 14:29:01
616阅读
线性表线性顺序表1、线性表的数据操作2、使用定义的函数实现两个集合LA和LB的合并:voidunionList(ListLA,ListLB,List&LC){intlena,i;ElemTypee;InitList(LC);//将LA的所有元素插入到LC中for(i=1;i<=ListLength(LA);i++){GetElem(LA,i,e);ListInsert(LC,i,e)
原创 2018-05-07 08:13:11
2984阅读
1点赞
二叉树二叉树的性质1、非空二叉树上的叶节点数等于双分支节点数加1.2、非空二叉树上第i层上至多有2^(i-1)个节点,这里应有1>=1.3、高度为h的二叉树至多有2^h-1个节点(h>=1)。4、在二叉树中,如果所有分支节点都有左孩子和右孩子节点,并且叶子节点都集中在二叉树的最下一层,这样的二叉树称为满二叉树。*只有度为0和度为2的节点*叶子节点都在最下一层5、完全二叉树:二叉树中最多
原创 2018-05-10 21:54:01
4991阅读
1点赞
我们今天来学习下数据结构,那么为什么要学习数据结构呢?学习它的意义可以使我们培养专业的程序设计思维,训练使用程序语言描述解决方案的能力。它是算法分析专业课的先修课程,也就是说,如果我们以后想学习算法类的课程,我们就必须得学好数据结构。我们先来看看程序的本质,程序是为了解决实际问题而存在的,从本质上而言,程序是解决问题的步骤描述。我们在进行问题分析时,首先得确认问题类型,如数值计算,求最小值个数等;其次是确认求解步骤,如打开文件,读数据,关闭文件,计算和等。那么我们如何判断问题求解步骤的好坏呢?1、用尽量少的时间解决问题;2、用尽量少的步骤解决问题;3、用尽量少的内存解决问题。数据结构主要的研究范围是:1、非数值计算类型的程序问题;2、数据间的组织和操作方式;3、数据的逻辑结构和存储结构。我们经常会听到:程序 = 数据结构 + 算法。那么对于数据结构和算法的研究而言,语言不重要,重要的是思想。但是它们是有前提的,我们绝对不能忽视它们的前提条件。
原创 2018-08-07 00:05:43
3015阅读
数据结构, 需要考虑两个方面:1. 每个元素具体的存储方法 (java中是一个对象)2. 元素之间的关系如何实现存储 (java中也是一个对象)另外在java中, 已经可以把跟数据结构有关的一些方法写到一个类里了.线性表顺序表c语言: 借助数组实现#define INIT_SIZE 100;type...
转载 2014-06-12 21:41:00
113阅读
2评论
redis中基础数据类型的实现,重点是简单动态字符串、压缩列表、跳表等 ...
转载 2021-09-26 16:39:00
140阅读
2评论
队列的特点先进先出在JavaScript中使用数组来模拟队列使用队列的场景JS异步中的任务队列计算最近请求次数
原创 2021-12-16 17:05:12
125阅读
  • 1
  • 2
  • 3
  • 4
  • 5