算法交作业
莫利斯安
小白成长记录博客。
展开
-
算法交作业之开篇(一)
首先解释下标题的含义:在网上看了一位大牛写的基础算法相关的博文,感觉自己不是天赋异禀,所以决定自己实现一遍当作交作业。 开篇: 今天这篇博文是关于数组查找的,很简单。 算法是计算机的生命。没有算法,就没有软件,计算机也就成了一个冰冷的机器,没有什么实用价值。很多人认为,算法是数学的内容,学起来特别麻烦。我们不能认为这种观点是错误的。但是我们也知道,软件是一种复合的技术,如果一个人原创 2015-02-19 23:30:08 · 852 阅读 · 0 评论 -
顺序栈
Head fileusing ElementType = int;#define MaxSzie 100#define Eof -1using PtrTop = int;struct SeqStack{ ElementType data[MaxSzie]; PtrTop top;};using PtrStack = SeqStack*;void InitStack(P原创 2015-04-21 22:13:46 · 387 阅读 · 0 评论 -
算法交作业之最大子序列问题
最近看《数据结构与算法分析》一书,书中提供的一些算法太棒了,忍不住动手实现了下。有错误请指出,谢谢。最大子序列问题求解:1.第一种解法:int MaxSubSequence(const int array[], int length){ if (length < 0) //数组长度不可以为0. return 0; int MaxSum = 0,ThisSum;原创 2015-04-09 13:37:17 · 694 阅读 · 0 评论 -
数据结构之顺序表
头文件:using ElementType = int;#define MaxSize 100struct SeqList{ ElementType data[MaxSize]; int length; /*the size of the seqlist */};using PtrList = SeqList*;using Position = int;using Le原创 2015-04-16 11:28:25 · 739 阅读 · 0 评论 -
双向链表
今天的内容是双向链1. Head File/*Double linked list */using ElementType = int;struct Node{ ElementType data; Node* prior; Node* next;};using PtrNode = Node*;using Position = Node*;//Operation原创 2015-04-20 13:16:30 · 674 阅读 · 0 评论 -
循环单链表
Head file/*Circular linked list */using ElementType = int;struct Node{ ElementType data; Node* next;};using PtrNode = Node*;using Position = Node*;//Operation .void InitList(PtrNode p);原创 2015-04-19 16:32:58 · 565 阅读 · 0 评论 -
算法交作业之查找
前言: 刚刚写了一篇发泄文,果不其然,心里面舒服很多。既然心情舒畅了,那就继续写下去吧。假定: 我们假定查找的数据唯一存在,数组中没有重复的数据存在。普通查找: 适用情景: 无特征,需要遍历整个范围才可以确定。#include #include //普通的查找算法。templateunsigned n>int Find_Array(c原创 2015-04-11 11:29:31 · 603 阅读 · 0 评论 -
算法交作业之最大公约数
今天写一下最大公约数算法,英文简称为Gcd算法。1.递归解法:/*书上并没有给出递归的解法,可能是觉得这个解法不是很完美,但是给出来就当学习下递归。*/int Gcd(unsigned num1, unsigned num2){ if (num1 == 0 || num2 == 0)//算法基于欧几里德的算法。 return (num1 > num2) ? num1 :原创 2015-04-10 17:48:32 · 520 阅读 · 0 评论 -
算法交作业之循环和递归(二)
说明: 循环是学习编程过程中的不可或缺的一部分。同时递归同循环有着千丝万缕的关系。求和函数示例://求0到n的和。求和失败返回-1.否则返回结果。#include <iostream>//最常见的循环写法。long long Sum(unsigned int&& n){ long long sum = 0; for (unsigned index = 1; index <原创 2015-02-21 23:13:05 · 907 阅读 · 0 评论 -
数据结构之链表
头文件using ElementType = int;struct Node{ ElementType data; Node* next;};using PrtNode = Node*;using Position = PrtNode;void InitLinkList(PrtNode p);bool IsEmpyt(PrtNode p);bool IsLast(Prt原创 2015-04-17 18:41:06 · 878 阅读 · 0 评论