C++ 数据结构概念

数据结构起源

计算机从解决数值计算问题到解决生活中的问题

现实生活中的问题涉及不同个体间的复杂联系

需要在计算机程序中描述生活中个体间的联系

数据结构主要研究非数值计算程序问题中的操作对象以及它们之间的关系

不是研究复杂的算法

数据结构中的基本概念

数据 – 程序的操作对象,用于描述客观事物  (int a, int b,)

数据的特点:

可以输入到计算机

可以被计算机程序处理

数据是一个抽象的概念,将其进行分类后得到程序设计语言中的类型。如:int,float,char等等

数据元素:组成数据的基本单位

数据项:一个数据元素由若干数据项组成

数据对象 – 性质相同的数据元素的集合   (比如:数组,链表)  

#define _CRT_SECURE_NO_WARNINGS

#include <iostream>
#include <string> struct _MyTeacher // 一种数据类型
{
char name[];
char tile[];
char addr[];
int age;
}; void mytest()
{
_MyTeacher t1; // 数据元素
_MyTeacher tArray[]; // 数据对象 形式相同元素的集合 memset(&t1, '\0', sizeof(t1));
strcpy(t1.name, "name"); // 数据项
strcpy(t1.addr, "addr"); // 数据项
strcpy(t1.tile, "title"); // 数据项
t1.age = ; // 数据项 return;
} int main()
{
mytest(); system("pause");
return ;
}

数据元素之间不是独立的,存在特定的关系,这些关系即结构

数据结构指数据对象中数据元素之间的关系  

如:数组中各个元素之间存在固定的线性关系

编写一个“好”的程序之前,必须分析待处理问题中各个对象的特性,以及对象之间的关系。

基本概念总结:

数据的逻辑结构

指数据元素之间的逻辑关系。即从逻辑关系上描述数据,它与数据的存储无关,是独立于计算机的。逻辑结构可细分为4类:

数据的物理结构

数据的运算

C++ 数据结构概念的更多相关文章

  1. (三)Redis之数据结构概念以及数据结构之字符串

    一.数据结构 五种数据类型: 字符串(String) 字符串列表(list) 有序字符串集合(sorted set) 哈希(hash) 字符串集合(set) 二.数据结构之字符串 二进制安全的,存入和 ...

  2. java数据结构与算法(一)

    1.数据结构概念 所谓的数据结构是数据之间的关系,都是为了提高程序效率而设计的. 分为逻辑关系和物理关系两种. 逻辑关系:人为的一种逻辑思维的认为. (1)集合:在一个范围内有多个数据,数据之间没有关 ...

  3. 初始数据结构(python语言)

    数据结构 概念:数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成 算法复杂度 时间复杂度 时间复杂度是同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法 ...

  4. 2 timeit模块,python中数据结构

    1.timeit模块:代码事件测量模块 timeit模块可以用来测试一小段Python代码的执行速度. class timeit.Timer(stmt='pass', setup='pass', ti ...

  5. 大学回顾和C与PHP之路

    我去年毕业,从事PHP学习和开发一年多. background:medical muti-media electric web; 先讲一下我的背景吧,我大学的学校是一个医科学校,然而专业是计算机动漫设 ...

  6. HBase底层存储原理——我靠,和cassandra本质上没有区别啊!都是kv 列存储,只是一个是p2p另一个是集中式而已!

    理解HBase(一个开源的Google的BigTable实际应用)最大的困难是HBase的数据结构概念究竟是什么?首先HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库.另一个不 ...

  7. redis教程(The little redis book中文版)

    许可证 <The Little Redis Book>是经由Attribution-NonCommercial 3.0 Unported license许可的,你不需要为此书付钱. 你可以 ...

  8. 【转】HBase架构解析

    转载地址:http://www.blogjava.net/DLevin/archive/2015/08/22/426877.html HBase架构组成 HBase采用Master/Slave架构搭建 ...

  9. c++ 时间函数和结构化数据

     time和localtime  数据结构概念  struct关键字  认识数据结构  自定义结构 例:获取当前系统日期和时间;(代码例子) 一.函数: time 函数time()返回的是当 ...

随机推荐

  1. hdu1272小希的迷宫(并查集判断回路和是否连通)

    传送门 迷宫中不能有回路,还要连通 如果最后集合数是一个那就是连通,否则不联通 要合并的两个顶点在相同集合内,表示出现了回路 输入时注意一下 #include<bits/stdc++.h> ...

  2. 原生android(一)

    一.移动APP的几种类型 1.Native APP:基于智能手机操作系统,并使用原生程序编写运行的应用程序,有IOS,Android,Windows Phone8等系统 2.Web APP:运行在智能 ...

  3. 简单的redis工具类

    import java.util.Arrays; import java.util.List;import java.util.Set; import org.apache.commons.lang. ...

  4. Linux golang使用cgo调用C++标准库问题

    我们知道cgo无法直接调用c++方法,但是可以通过c包装c++方法,以达到使用的目的. C++中,我们经常会用到STL.在cgo中,如果要调用STL,需要作如下操作: //cgo LDFLAGS: - ...

  5. Java子类初始化调用父类无参构造

    实在是服了自己,子类初始化调用父类无参构造这种初学者都应该知道的事,我给忘了. 记得当初看书的时候各种概念抄在笔记本上,再上机实践,以为一辈子都不会忘,还是给忘了. 这件事说明了两个问题: 1.我没有 ...

  6. golang--性能测试和分析

    前言 测试分为:压力测试.负载测试.性能测试,功能测试等等,其中在开发过程中开发人员经常要写一些test case unit 自己的模块进行功能测试测和性能.在分析出模块的性能瓶颈后开发人员就需要针对 ...

  7. How to submit a package to PyPI

    How to submit a package to PyPI The other month a coworker of mine wanted to distribute a small wrap ...

  8. javascript常用方法和技巧

    浏览器变编辑器 data:text/html, <style type=;right:;bottom:;left:;}</style><div id="e" ...

  9. maven实战读书笔记(一)

    环境变量设置 MAVEN_HOME:G:\maven-3.2\apache-maven-3.2.5 Path: G:\maven-3.2\apache-maven-3.2.5\bin 其实正确的设置应 ...

  10. Hibernate利用纯sql

    String hql = "select * from shop where shop.strid in(select strid from moneythreeshop where mon ...