数据结构基本概念和术语之位字节、字、位串、元素等
数据结构基本概念和术语:位、字节、字、位串、元素、数据域、物理结构、逻辑结构
位(Bit):"位(bit)"是电子计算机中最小的数据单位。每一位的状态只能是0或1。
字节(Byte):8个二进制位构成1个"字节(Byte)",它是存储空间的基本计量单位。1个字节可以储存1个英文字母或者半个汉字,换句话说,1个汉字占据2个字节的存储空间。
字:"字"由若干个字节构成,字的位数叫做字长,不同档次的机器有不同的字长。例如一台8位机,它的1个字就等于1个字节,字长为8位。如果是一台16位机,那么,它的1个字就由2个字节构成,字长为16位。字是计算机进行数据处理和运算的单位。
位串:由若干位组合起来形成位串。
元素:用一个由若干位组合起来形成的一个位串表示一个数据元素,通常称这个位串为元素(Element)或节点(Node)。
数据域(Data Field):当数据元素由若干数据项组成时,位串中对应于各个数据项的子位串称为数据域(Data Field)。
物理结构(又称存储结构):数据结构在计算机中的表示(又称映象)。
逻辑结构:结构定义中的"关系"描述的是数据元素之间的逻辑关系,因此又称为数据的逻辑结构。
理解:
1)引入位串这个词只是为准确叙述元素的概念而出现,描述由若干位组合起来的称呼
2)位串-元素
3)子位串-数据域
4)元素是数据元素在计算机中的表示(又称映象)
5)元素或结点是基于物理结构的概念,而数据元素是基于逻辑结构的概念
数据结构基本概念和术语:数据、数据元素、数据项、数据对象、数据结构、结构
数据(Data):是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。
数据元素(Data Element):是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
数据项(Data Item):一个数据元素可有若干个数据项组成;数据项是数据的不可分割的最小单位。
数据对象(Data Object):是性质相同的数据元素的集合,是数据的一个子集。
数据结构(Data Structure):是相互之间存在一种或多种特定关系的数据元素的集合。
结构(Structure):数据元素相互之间的关系。
理解:1)数据是一种笼统的概念,既包括字符,也包括图像、声音等,就是我们平常所说的数据,如,我硬盘里的数据都不见了,这个数据的概念应该就是这里所说的数据。
2)数据元素是数据的基本单位,它可细分。
3)数据项是组成数据元素的各项,它也是数据的最小单位。
4)数据对象是某类数据元素的集合,这类数据元素都具有共同点,比数据的范围要小。
5)注意这里数据结构并不是关系的意思,而是各种存在相互关系的数据元素的集合。
6)结构才是关系的意思。
相关推荐
-
C语言数据结构之动态分配实现串
C语言数据结构之动态分配实现串 说明:堆分配存储实现串时,串并不是以'\0', 而是用数据项int length来表示的,所以和传统的c语言操作字符串有所不同. 头文件 #ifndef PILEHEAD_H_INCLUDED #define PILEHEAD_H_INCLUDED #include <stdio.h> #include <stdlib.h> typedef struct { char* ch ; int len ; }HString ; int StrAssign(
-
C语言数据结构中串的模式匹配
C语言数据结构中串的模式匹配 串的模式匹配问题:朴素算法与KMP算法 #include<stdio.h> #include<string.h> int Index(char *S,char *T,int pos){ //返回字串T在主串S中第pos个字符之后的位置.若不存在,则函数值为0. //其中,T非空,1<=pos<=StrLength(s). int i=pos; int j=1; while(i<=S[0]&&j<=T[0]){ i
-
C++语言数据结构 串的基本操作实例代码
C语言数据结构 串的基本操作实例代码 输出结果: 实现代码: #include<iostream> using namespace std; typedef int Status; #define Max 20 #define OK 1 #define ERROR 0 #define OVERLOE -2 typedef struct//堆分配表示串 { char *ch; int length; }HString; //====================================
-
C语言数据结构之模式匹配字符串定位问题
C语言数据结构之模式匹配字符串定位问题 主要实现了三种字符串的模式匹配,主要包括字符串子操作的集合,字符串指针回溯,和KMP算法 头文件 #ifndef INDEXHEAD_H_INCLUDED #define INDEXHEAD_H_INCLUDED #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAXLEN 255 typedef char Sstring[MAXLEN + 1
-
C语言实现数据结构串(堆分配存储表示法)实例详解
堆分配存储表示法 存储结构: 构建堆来存储字符串,本质上是顺序表 实现代码: #include <stdio.h> #include <stdlib.h> #include <string.h> #define OK 1 #define ERROR 0 #define TRUE 1 #define FALSE 0 #define OVERFLOW -2 #define STR_INIT_SIZE 100 #define STRINCREMENT 10 typedef i
-
C数据结构中串简单实例
C数据结构中串简单实例 运行截图: 实例代码: #include "stdio.h" #include "string.h" #include "stdlib.h" #define OK 1 #define ERROR 0 #define TRUE 1 #define FALSE 0 #define MAXSIZE 40 /* 存储空间初始分配量 */ typedef int Status; /* Status是函数的类型,其值是函数结果状态代码
-
JavaScript数据结构中串的表示与应用实例
本文实例讲述了JavaScript数据结构中串的表示与应用.分享给大家供大家参考,具体如下: 类似于线性表的顺序存储结构,用一组地址连续的存储单元存储串值的字符序列.下面我们以串联接为例,讲解一下这种存储结构时串的操作.JavaScript自带有concat方法,该方法返回字符串值,该值包含了两个或多个提供的字符串的连接. 其实思路很简单,就是将第二个串拼接在第一个串后面,代码如下 <!DOCTYPE html> <html> <head> <meta chars
-
C语言数据结构实现字符串分割的实例
C语言数据结构实现字符串分割的实例 以下为"字符串分割"的简单示例: 1. 用c语言实现的版本 #include<stdio.h> /* 根据空格分隔字符串 */ int partition(char *src, char *par, int pos) { int i,j; i = pos; //取到第一个非空格字符 while(src[i] == ' ') { ++i; } if(src[i] != '\0') { j = 0; while((src[i] != '\0'
-
数据结构基本概念和术语之位字节、字、位串、元素等
数据结构基本概念和术语:位.字节.字.位串.元素.数据域.物理结构.逻辑结构 位(Bit):"位(bit)"是电子计算机中最小的数据单位.每一位的状态只能是0或1. 字节(Byte):8个二进制位构成1个"字节(Byte)",它是存储空间的基本计量单位.1个字节可以储存1个英文字母或者半个汉字,换句话说,1个汉字占据2个字节的存储空间. 字:"字"由若干个字节构成,字的位数叫做字长,不同档次的机器有不同的字长.例如一台8位机,它的1个字就等于1个
-
c++ 判断是64位还是32位系统的实例
1.IsWow64Process 确定指定进程是否运行在64位操作系统的32环境(Wow64)下. 语法 BOOL WINAPI IsWow64Process( __in HANDLE hProcess, __out PBOOL Wow64Process ); 参数 hProcess 进程句柄.该句柄必须具有PROCESS_QUERY_INFORMATION 或者 PROCESS_QUERY_LIMITED_INFORMATION 访问权限 Wow64Process 指向一个bool值, 如果该
-
PHP和MySql中32位和64位的整形范围是多少
一个字节有8位,所以32位int型占用32位/8位=4个字节,64位int型占用64位/8位=8个字节. 32位,64位无符号整型最大值: 2^64-1 = 18446744073709551615 2^32-1 = 4294967295 32位,64位有符号整型最大值: (2^32)/2-1 = 2147483647 (2^64)/2-1 = 9223372036854775807 减1是因为整型包括0. 64位Ubuntu 14.04,PHP_INT_MAX的值为92233720368547
-
判断Unix系统及库文件是32位还是64位的详解
判断Unix系统及库文件是32位还是64位的详解 一.查看系统32还是64位系统 bootinfo -y 查看硬件位数 bootinfo -K 查看内核位数 二.查看库文件是32位还是64位 1.使用file命令 Linux: # file libnss1_files-2.2.4.so libnss1_files-2.2.4.so: ELF 32-bit LSB shared object, Intel 80386, version 1, not stripped # file lib
-
详解Java如何利用位操作符创建位掩码
目录 位掩码 举个例子 编码 解码 提取一个比特 第一比特 任意位置的位 提取多个比特 应用一个比特掩码 总结 在本文中,我们来看看如何使用位操作符实现低级别的位掩码.我们将看到我们如何将一个单一的int变量作为一个单独的数据容器. 位掩码 位掩码允许我们在一个数字变量中存储多个值.我们不再把这个变量看作一个整数,而是把它的每一个比特当作一个独立的值. 因为一个比特可以等于 0 或 1,我们也可以把它看成是 false 或 true .我们也可以把一组比特切开,把它们当作一个较小的数字变量甚至是
-
python判断windows系统是32位还是64位的方法
本文实例讲述了python判断windows系统是32位还是64位的方法.分享给大家供大家参考.具体分析如下: 通常64的windows系统program files文件夹(用来安装应用程序的默认的默认的目录),有2个,一个是program files另外一个是program files(x86), 而32bit的只有program files这一个文件夹. 根据上面这一特点,我们就可以判断windows系统是32还是64位的. import os prg = 'C:Program Files(
-
在双硬盘上安装独立32位和64位双系统
现在的64位操作系统还没有中文版,加之受兼容性问题的影响,组建独立多系统显然已成为最佳的解决方案.很多朋友在配置64位硬件平台时已购入了SATA硬盘,但同时拥有SATA和PATA硬盘的朋友也不在少数,下面就来说明怎样在这两块硬盘上构建32位和64位Windows XP的独立双系统. 一.设置SATA硬盘 说明:本次用于试验的硬盘为: PATA接口的希捷40GB和SATA接口的希捷80GB硬盘各一块.怎样设置SATA硬盘,由主板决定,本文以硕泰克SL-K8AV2-R1L主板上的设置方法为例.各位朋
-
15位和18位身份证JS校验的简单实例
一.身份证号码的结构和表示形式 1.号码的结构 根据[中华人民共和国国家标准GB11643-1999]中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码. 2.地址码 表示编码对象常住户口所在县(市.旗.区)的行政区划代码,按GB/T2260的规定执行. 3.出生日期码 表示编码对象出生的年.月.日,按GB/T7408的规定执行,年.月.日代码之间不用分隔符. 4.顺序
-
js身份证判断方法支持15位和18位
复制代码 代码如下: //HTML页面上要有一个id为identity_card的input输入框,一个id为ipmessage的身份证错误或正确时提示消息的地方 <script> //身份证验证 $(document).ready(function(){ $("#identity_card").change(function(){ var idcard =$(this).val(); checkDate(idcard ); }); }); //身份证 function c
-
C#判断系统是32位还是64位的方法
本文实例讲述了C#判断系统是32位还是64位的方法.分享给大家供大家参考.具体如下: public static int GetOSBit() { try { string addressWidth = String.Empty; ConnectionOptions mConnOption = new ConnectionOptions(); ManagementScope mMs = new ManagementScope(@"\\localhost", mConnOption);
随机推荐
- 如何验证Tomcat Gzip配置是否生效的方法
- C# Winform 实现屏蔽键盘的win和alt+F4的实现代码
- asp.net运行提示未将对象引用设置到对象的实例错误解决方法
- php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
- ThinkPHP中Common/common.php文件常用函数功能分析
- Python中的zip函数使用示例
- php学习之function的用法
- php中json_encode UTF-8中文乱码的更好解决方法
- jQuery中position()方法用法实例
- C++实现银行排队系统
- 详解JavaScript中循环控制语句的用法
- 基于JavaScript代码实现微信扫一扫下载APP
- 浅谈Android Studio JNI生成so库
- JS实现验证码倒计时的注册页面
- OPENCV+JAVA实现人脸识别
- Java仿淘宝首页分类列表功能的示例代码
- 详解MySQL索引原理以及优化
- PHP结合Redis+MySQL实现冷热数据交换应用案例详解
- Django REST Framework序列化外键获取外键的值方法
- Linux shell脚本的建立与执行