随笔分类 - C++/C
摘要:#include <stdio.h>#include <string.h>//pInputStr中是原来待处理的字符串,m是其大小//pOutputStr是删除重复后的字符串,其大小用n返回void RemoveRepeatChar(const char* pInputStr, int m,char* pOutputStr, int* n){ int k = 0; //开始时,pOutputStr是空的,所以赋值0 //遍历pInputStr中的字符 for( int i = 0; i < m; i++) { char Test_char = pInputStr[
阅读全文
摘要:序言 最近在网上看到了几篇篇讲述内存池技术的文章,有一篇是有IBM中国研发中心的人写的,写的不错~~文章地址在本篇blog最后。原文的讲述比我的要清晰很多,我在这只是把我的一些理解和遇到的一些问题和大家分享一下~~一、为什么要使用内存池技术呢 主要有两个原因:1、减少new、delete次数,减少运行时间;2、避免内存碎片。 1、效率 c语言中使用malloc/free来分配内存,c++中使用new/delete来分配内存,他们的内存申请与释放都是与操作系统进行交互的。具体的内容在严蔚敏数据结构的第八章有相关讲述,主要就是系统要维护一个内存链表,当有一个内存申请过来时,根据相应的分配算...
阅读全文
摘要:*题目描述:请编写一个函数,求n个字符串的最长公共子串,n<20,字符长度不超过255. 例如有三个字符串为: what is local bus? Name some local bus. local bus is high speed I/O bus close to the processor. 则最长的公共子串为“local bus”。*要求实现的函数:char* findSameSubStr(const char* pIn[],int n) 【输入】pIn:输入的字符串 n :输入的字符串个数,即数组中元素个数 【返回】动态分配的最长...
阅读全文
摘要:比较排序算法,就是通过对不同元素的直接比较,确定大小关系,进而将一组数据排序的方法。这种比较可以是相邻元素间的,也可是是不同元素间的。我们通常遇到的如快速排序算法、堆排序算法、冒泡排序等,都是比较排序算法。 下面我将对常见的这几种比较排序算法的算法思想进行简单介绍,并附上实现代码。 一、选择排序算法 遍历一遍数组,选择其中国最小的元素,放在数组的最左边;在剩下的元素中,继续寻找最小的元素,直到剩余元素为零。选择排序算法的稳定性比较特殊,如果待交换位置与遍历方向相一致,则稳定;如果不相一致,则不稳定。例如:待交换的元素放到最左边,你从右向左遍历选择,相同元素m1、m2,会将m2交换到m1前...
阅读全文

浙公网安备 33010602011771号