数据结构基础之串
2016-02-05 23:05
302 查看
串
串是由零个或多个字符组成的有限序列,又叫字符串(string),串中的字符数目n称为串的长度,零个字符的串称为空串(null string),它的长度为零,可以直接用“”表示。
一些概念:
空格串,是只包含空格的串。主要注意它与空串的区别,空格串是有内容长度的,而且可以不止一个空格。
子串与主串,串中任意个数的连续字符组成的子序列称为该串的子串,相应的,包含子串的串称为主串。
计算机中串的比较通过ASCII码(美国信息交换标准代码)完成,原有128个字符,扩展码有256个字符,每个字符由8位二进制数表示。为了表示更多国家的字符就出现了Unicode码,比较常用的是由16位的二进制数表示一个字符,这样总共可以表示2^16个字符,也就是65536个字符,足够表示常用汉字。
在计算机中比较两个字符串必须是它们串的长度和它们各个对应位置的字符都相等时才算是相等的。在串值后面加一个不计入串长度的结束标记字符,比如“\0”来表示串值的终结。串值的存储空间可在程序执行过程中动态分配而得。比如在计算机中有一个存储区,叫做“堆”。这个堆可由C语言的动态分配函数malloc()和free()来管理。
串是由零个或多个字符组成的有限序列,又叫字符串(string),串中的字符数目n称为串的长度,零个字符的串称为空串(null string),它的长度为零,可以直接用“”表示。
一些概念:
空格串,是只包含空格的串。主要注意它与空串的区别,空格串是有内容长度的,而且可以不止一个空格。
子串与主串,串中任意个数的连续字符组成的子序列称为该串的子串,相应的,包含子串的串称为主串。
计算机中串的比较通过ASCII码(美国信息交换标准代码)完成,原有128个字符,扩展码有256个字符,每个字符由8位二进制数表示。为了表示更多国家的字符就出现了Unicode码,比较常用的是由16位的二进制数表示一个字符,这样总共可以表示2^16个字符,也就是65536个字符,足够表示常用汉字。
在计算机中比较两个字符串必须是它们串的长度和它们各个对应位置的字符都相等时才算是相等的。在串值后面加一个不计入串长度的结束标记字符,比如“\0”来表示串值的终结。串值的存储空间可在程序执行过程中动态分配而得。比如在计算机中有一个存储区,叫做“堆”。这个堆可由C语言的动态分配函数malloc()和free()来管理。
相关文章推荐
- 数据结构图文解析之:二叉堆详解及C++模板实现
- 数据结构基础之双向链表(约瑟夫问题)
- 数据结构--动态规划
- 数据结构(5)--栈的定义以及相关操作的实现
- 数据结构实验之排序四:寻找大富翁
- 数据结构实验之排序六:希尔排序
- 数据结构实验之排序五:归并求逆序数
- 数据结构之单向链表
- 小蚂蚁学习数据结构(30)——图的其他知识点简介
- 数据结构(4)--循环链表的应用之约瑟夫环问题以及线性表总结之顺序表与链表的比较
- 【Redis笔记(六)】 Redis数据结构 - 有序集合zset
- 学习笔记------数据结构(C语言版)队列链式存储
- LinuxC常用数据结构及函数总结
- C++数据结构栈的实现
- Floodlight之 FloodlightContextStore 数据结构
- 单源最短路径之Bellman-Ford 算法
- 数据结构实验之二叉树六:哈夫曼编码
- Nginx源码分析 - 基础数据结构篇 - 单向链表结构 ngx_list.c
- 数据结构之红黑树与平衡二叉树
- 数据结构(3)--线性表实现一元多项式加法