
《算法笔记》学习笔记
文章平均质量分 67
JimmieZou
这个作者很懒,什么都没留下…
展开
-
基于排序的方法求一组数的中位数(冒泡排序&选择排序) -- 浙大《数据结构》第二版 例2.6
基于排序的方法求一组数的中位数这个例题写上两种方法。其实既然是基于排序的,那么方法的不同,区别就在采用的排序方法的不同。自己想到的是冒泡排序(你说说你们,学了这么久的数据结构,连个冒泡排序都不会写,读什么书?--刘振宇),书上提供给的是选择排序。自己想到的办法(冒泡排序)冒泡排序的思想冒泡排序是一种比较简单的排序方法,它的基本思路是:重复的走访要排序的数列,一次比较相邻的两个元原创 2016-09-02 20:01:11 · 1910 阅读 · 0 评论 -
大整数运算
本篇博客记录大整数运算相关问题。 包括: 1. 大整数的存储 2. 大整数的四则运算1 大整数的存储大整数又叫高精度数,一般指其范围已经超出了基本数据类型能够表示的范围的数。 很容易想到,对于高进度数我们需要用数组来存储。有以下几点注意事项: 1. 顺位存储 如123,我们这么保存:num[0] = 3, num[1] = 2, num[2] = 1,即整数的高位保存在数组...原创 2018-01-12 10:02:51 · 1288 阅读 · 0 评论 -
字符串hash算法
本篇博客主要记录了 字符串hash 的相关算法,包括: 1. 字符串hash初步 2. 字符串hash进阶(还不一定什么时候写,初步的内容在大部分情况下是够用的)概述散列(hash)是一种常用的算法思想,是一种典型的以空间换时间的做法。 对于整数型的散列算法在一般的数据结构课程或书籍中都会教授,这两个名词不知道是否会激起您的一些记忆:散列函数、冲突。这篇博客不讨论散列函数的构原创 2018-01-14 11:47:51 · 1314 阅读 · 0 评论 -
结构体中的数组成员的赋值问题
#include using namespace std;struct student{ char name[20]; int age;};int main( ){ student s; s.name="gyy"; //error return 0;}道理和以下语句错误的原因一样,数组名表示常量,不允许对常量赋值,所以常量不允转载 2016-08-22 19:20:27 · 11619 阅读 · 0 评论 -
单链表的就地逆转 -- 浙大《数据结构》第二版 例2.4
在浙大版的《数据结构》的数据结构实现基础部分的链表部分看到这样的一个题目。自己想了一个,结果不行,就看了解释以及代码,嗯,没错,看了好久才明白。这个题目据说是很多公司的面试题,大致比较流行的有两种方法,一种叫”迭代法“,也就是用循环吧,这个有两种的思路(暂时算两种,这两种方法有点殊途同归的感觉,后面会具体分析到);另外一种是递归,这种方法等我学习到递归再来做一遍~先说一下浙大书原创 2016-08-25 19:46:06 · 3667 阅读 · 1 评论 -
Eratosthenes筛法求素数表
筛法求素数表原创 2017-03-26 16:16:22 · 1189 阅读 · 0 评论 -
质因子分解
这篇记录《算法笔记》中质因子分解的相关内容,包括: 1. 质因子分解 2. 求一个正整数N的因子个数 3. 求一个正整数N的所有因子的和原创 2017-04-02 16:00:04 · 1497 阅读 · 0 评论 -
分数的四则运算
分数的四则运算详解-->有理数的四则运算原创 2017-03-25 11:34:58 · 2001 阅读 · 0 评论 -
递归的基本原理
看《算法笔记》到递归了,遇到稍稍复杂一点的递归就会昏头。查阅资料发现大神们推崇《The Little Schemer》和《SCIP计算机程序的构造和解释》这两本书,第一本貌似不太厚,但是只有全英版本,目前正在准备一件比较重要的事情,来不及看这两本超级经典了,有时间了真是一定要看啊。今天中午午休时拿出了《C Primer Plus》,带着一点点希望,想从这里面找到一点“灵感”,之前也特意看过这本...原创 2017-03-09 20:35:52 · 14633 阅读 · 18 评论 -
快速排序 & 随机数的生成方法 & 随机快排
记录一下《算法笔记》中生成随机数的思想与方法为了引申出随机快排,顺便记录了快速排序算法。原创 2017-03-18 16:47:50 · 6060 阅读 · 2 评论 -
归并排序
归并排序的递归和非递归实现原创 2017-03-18 15:12:13 · 396 阅读 · 0 评论 -
sscanf & sprintf
sscanf和sprintf是用来处理字符串问题的利器,从构词上它们可以看成是string+scanf / string+printf。记录sprintf & sscanf 之前,先来会故一下printf & scanf: 如果想要从屏幕输入int型变量n并将int型变量n输出到屏幕上,写法如下: scanf(“%d”, &n); printf(“%d”, n);事实上,上面的写法可以原创 2017-02-04 11:17:39 · 418 阅读 · 0 评论 -
疑问记录
PAT-A 1046 Shortest Distence 用图的相关知识(最短路径算法)的题解?原创 2017-02-11 16:48:55 · 373 阅读 · 0 评论 -
codeup 1928 日期差值
日期处理问题真是让人感到头疼,需要非常细心的去处理细节。(但是看了《算法笔记》上的解法,我觉得方法才是最重要的……)下面以codeup上的一道题来介绍相关问题,以及从中习得的一些新的知识点。题目如下:题目描述有两个日期,求两个日期之间的天数,如果两个日期是连续的我们规定他们之间的天数为两天。输入有多组数据,每组数据有两行,分别表示两个日期,形式为YYYYMMDD输出每组数据输出一行,即日期差值原创 2017-02-07 16:22:53 · 1364 阅读 · 3 评论 -
视频编程作业-两个有序列表的合并
算是写了快要一天才写出来的一个题!!有些崩溃啊~题目描述 02-线性结构1 两个有序链表序列的合并 (15分) 本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个递>增的整数序列。 函数接口定义: List Merge( List L1, List L2 ); 其中List结构定义如下: typedef struct Node *Pt原创 2016-09-25 20:39:58 · 937 阅读 · 0 评论 -
clock()函数的用法
clock()函数的用法#include<stdio.h>#include<time.h>clock_t start,end;double duration;int main() { start = clock(); Myfunction(); end = clock; duration = ((double)(end-start))/CLK_TCK;}原创 2016-09-24 11:00:31 · 1022 阅读 · 0 评论 -
PAT题型分类 & 记录汇总
这篇博客记录了我在跟着《算法笔记》以及习题册《算法笔记 上机实践指南》刷了PAT的题目之后的一些解题方法的总结与心得。第三章 入门模拟1. 简单模拟一般解题思路这一小节的题目只需根据题目描述(一般规则很简单),用代码实现即可;有些题目在用到一下知识点之后变得更简便。学到的知识点/和%运算符的强大作用数组下标映射打表循环问题的解题思路(left to r...原创 2017-02-17 09:47:09 · 13417 阅读 · 2 评论