上一页 1 ··· 3 4 5 6 7 8 9 下一页
摘要: 主要介绍strlen(), strcat(), strncat(), strcmp(), strncmp(), strcpy(), strncpy()以及sprintf()。 strlen() 原型:size_t strlen(const char \ __s); 获取字符串长度。参数为字符串地址, 阅读全文
posted @ 2019-01-05 23:15 Jeffrey_Yang 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 字符串输入 字符串输入首先要考虑的是存储位置和存储空间大小。 例子:char \ name; scanf("%s", name); 指针未初始化,可能指向内存中的任意地方,字符串读入的时候有可能覆盖内存中的关键数据,造成程序或机器崩溃。 char name[81]; 这种方式显式声明空间并进行初始化 阅读全文
posted @ 2019-01-05 15:51 Jeffrey_Yang 阅读(1611) 评论(0) 推荐(0) 编辑
摘要: C语言中的字符串一般就是字符数组(char array terminated with a null character '\0')。而数组和指针又可以操作字符串,同时C标准库(stdio.h和string.h等)提供了很多常用的字符串操作函数。 因此,有必要记录这些重要的函数,以及字符串的函数和指 阅读全文
posted @ 2019-01-05 00:13 Jeffrey_Yang 阅读(319) 评论(0) 推荐(0) 编辑
摘要: C语言中数组和指针经常会放在一起讲,因为对于数组遍历的时候,可以通过指针的移动来代替。所以,数组和指针的关系有时候会让人很模糊,甚至让人混淆。本篇博文将试图说明数组的特性,指针的特性,以及数组和指针的联系与区别。 一维数组 一维数组初始化 float candy[365], char code[12 阅读全文
posted @ 2019-01-04 00:51 Jeffrey_Yang 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 堆排序是本博文介绍的几个排序算法中唯一引入了抽象数据结构(ADT)的排序方式。要完全理解堆排序的实现方式,首先需要理解堆这种数据结构的实现方式。 堆 提到堆,首先会引入优先队列(Priority Queues)的概念,优先队列不同于队列,队列是FIFO,在优先级队列中,队列内元素的逻辑顺序由其优先级 阅读全文
posted @ 2018-11-19 20:31 Jeffrey_Yang 阅读(358) 评论(0) 推荐(0) 编辑
摘要: MIT一直是免费公开课的传播者和引领者,旨在为全世界各地的人们提供免费可在线观看的大学课程。将精英大学的课程搬到网上,会造福整个人类。 这一分类博文将跟随MIT的6006课程《Introduction to Algorithms》,实现课程中所讲到的算法。 首先讲到的是算法思想,如何通过将复杂问题, 阅读全文
posted @ 2018-11-07 22:42 Jeffrey_Yang 阅读(1084) 评论(0) 推荐(0) 编辑
摘要: 问题描述 Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would ha 阅读全文
posted @ 2018-11-05 22:05 Jeffrey_Yang 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 快速排序,和归并排序一样,采用分而治之和递归的方式。 原理 快速排序的步骤为: 1. 从待排序列表中选择一个轴(piovt:一般默认为选择index为0的元素,改进快速排序算法一般在轴的选择上作文章)。 2. 划分大小区域(partitioning):对数组进行重新排序,使得值小于pivot的所有元 阅读全文
posted @ 2018-11-04 14:12 Jeffrey_Yang 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 定义 归并排序是一种递归算法,可以将列表连续分成两半。 如果列表为空或只有一个元素,则按定义(基本情况)已是排序列表。 如果列表有多个元素,我们拆分列表并在两半上递归调用合并排序。 一旦这两半部分排序完毕,就会执行称为合并的基本操作。 合并是获取两个较小的排序列表并将它们组合成一个排序的新列表的过程 阅读全文
posted @ 2018-11-03 23:14 Jeffrey_Yang 阅读(1141) 评论(0) 推荐(0) 编辑
摘要: 希尔排序,又称“缩小增量排序”,通过将原始列表分成若干个子列表来改进插入排序,每个子列表使用插入排序。 如何选择子列表的形式是希尔排序的关键。希尔排序使用增量i(有时又成为间隙gap)来创建子列表,而不是将原始列表连续的切分。这种方式可以将相隔较远,较为分散的元素通过增量划分到一组,改进了一次插入排 阅读全文
posted @ 2018-11-03 18:00 Jeffrey_Yang 阅读(566) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 下一页