简介

 C语言对字符串的处理是比较麻烦的,用字符数组的形式来实现,这就使得字符串的输入输出、比较等操作非常僵硬。在C++、Java、C#等语言中都使用到了string这一类型来处理字符串,其特点大同小异。

阅读全文 »

strlen()—获取字符串长度

函数原型:

1
2
size_t strlen(const char *str); 
// 用const修饰char *str保证传入函数的字符串不会被改变;

 size_t是定义在”stddef.h”头文件中的数据类型。其在32位架构中相当于unsigned int,而在64位架构中为unsigned long。这种随操作系统架构而改变的数据类型增强了程序的跨平台移植性。更多有关size_t内容请参考Jeremy

阅读全文 »

要求

 对于一个已知的升序顺序表,输入一个关键字,用二分法在数组中快速检索此关键字。

实现

 二分查找又称折半查找,可用于有序顺序表的快速关键字检索,时间效率为O(logn)。使用递归算法可以更加简洁明了的表现算法内涵。

阅读全文 »

要求

  实现对于给定字符串,能够统计出出现了哪些字符,以及每个字符出现的频次。这是构造哈夫曼编码等问题的一个基本功能模块。

实现

  计算机中的字符种类是有限的,只考虑ASCII中规定的字符则不超过256个。为此,考虑空间换时间的做法,直接用数组来解决。这个实现的核心就在这里,使用一个长度大于等于256的int型数组,每个数组元素为ASCII表中相应元素的出现频次。扫描给定的字符串,将相应的数组元素值加一,最后输出那些值不为0的元素对应的字符即可。

阅读全文 »


希望在旧版博客访问该文章?请戳:极化码的matlab仿真(1)——参数设置


  仿真的手段有很多种。可以利用C,C++,matlab甚至python等进行仿真的实现。其中matlab由于具有强大的函数库和可观的矩阵运算能力而特别适合于工程领域的仿真。matlab的语法非常简单,接近自然语言。其优秀的绘图能力,众多的集成工具箱极大的方便了使用者。当然用C来仿真也是可以的,C语言编写的程序仿真速度非常快,但是编写起来很不友好。试想一个简单的函数,matlab只需要调用一下就好了,C语言基本上都要自己动手写。
  话不多说,本节我们主要介绍matlab仿真极化码的第一步——设置仿真参数。

阅读全文 »