
算法
WHILEFALSETRUE
这个作者很懒,什么都没留下…
展开
-
优先队列
数据结构struct PriorityQueue{ int MAXNUM; int n; DataType *pq;};typedef struct PriorityQueue *PPriorityQueue;struct PriorityQueue{ int MAXNUM; //容量 int n; //个数 DataType *pq; //数据};向优先队列中插入一...原创 2019-04-19 17:48:36 · 375 阅读 · 0 评论 -
算法作业--求两个字符串的最长公共子串
/*作者:Yj*/#include<stdio.h>#include<stdlib.h>#include<string.h>//字符串的数据结构 顺序表示struct SeqString{ int MAXNUM; int n; char *c;};typedef struct SeqString *PSeqString;//创建一...原创 2019-05-13 17:52:45 · 896 阅读 · 0 评论 -
算法--排序方法的代码总结
typedef int KeyType;typedef int DataType;typedef struct { KeyType key; DataType info;}RecordNode;typedef struct { int n; RecordNode *record;}SortObject;void insertSort(SortObject *...原创 2019-05-13 20:13:18 · 242 阅读 · 0 评论 -
算法作业-学生表;多项式加法
实现学生类 插入删除 统计均分#include<stdio.h>#include<stdlib.h>#include<string.h>struct Student;typedef struct Student *PStudent;struct Student { char name[20]; int score; PStudent lin...原创 2019-05-10 16:01:05 · 209 阅读 · 0 评论 -
平衡二叉树关键代码
struct AVLNode;typedef struct AVLNode *PAVLNode;struct AVLNode { KeyType key; int bf; PAVLNode llink,rlink;};typedef struct AVLNode *AVLTree;typedef struct *PAVLTree;int avlInsert(PAVLT...原创 2019-05-11 15:27:37 · 369 阅读 · 0 评论 -
二叉排序树
struct BinSearchNode;typedef struct BinSearchNode *PBinSearchNode;struct BinSearchNode{ keyType key; PBinSearchNode llink,rlink;};typedef struct BinSearchNode *BinSearchTree;typedef BinSearc...原创 2019-05-11 15:28:19 · 212 阅读 · 0 评论 -
C语言实现二叉排序树线索化再中序遍历
#include<stdio.h>#include<stdlib.h>#define M 1000struct ThrTreeNode;typedef struct ThrTreeNode *PThrTreeNode;struct ThrTreeNode{ int info; PThrTreeNode llink,rlink; int ltag,rt...原创 2019-06-02 09:18:24 · 359 阅读 · 0 评论 -
学生表
#include<iostream> #include<stdlib.h> #include<stdio.h> #include<string.h>#include<string>using namespace std;typedef struct BookInfo{ ///// 图书结构 int b_Code; ///...转载 2019-06-13 17:37:10 · 325 阅读 · 0 评论 -
python实现基本数据结构 链表
class Node(object): """ data:数据段 next:指针段 """ def __init__(self, value, next=Node): self.value = value self.next = next def __repr__(self): """ ...转载 2019-07-18 09:23:18 · 135 阅读 · 0 评论 -
线性表和链表的倒置
//倒置线表void rev_seq(PSeqList palist){ DataType temp; int count, i; if(palsit->n == 0 || palist->n == 1) return ; count = palsit->n/2; for(i=0;i<count;i++){ x = palist-&g...转载 2019-04-28 11:20:09 · 1237 阅读 · 0 评论 -
对称序线索二叉树总结之周游
线索二叉树根据其线索周游很方便void nInOrder(ThrTree t){ ThrTree p=t; if(t==NULL) return ; while(p->llink!=NULL&&p->ltag==0) p = p->llink; //左节点不为空,顺左节点一直向下 while(p!=NULL){ v...原创 2019-04-18 16:40:04 · 877 阅读 · 0 评论 -
按对称序线索二叉树总结之建立
对称序二叉树的意义就是能够很方便的找出前驱和后继数据结构struct ThrTreeNode;typedef struct ThrTreeNode *PThrTreeNode;struct ThrTreeNode{ DataType info; PThrTreeNode llink,rlink; int ltag,rtag;};typedef struct ThrTreeN...原创 2019-04-18 16:30:45 · 341 阅读 · 0 评论 -
单链表的建立(头插法和尾插法)
可供参考:https://blog.youkuaiyun.com/qq_41028985/article/details/82859199https://mp.weixin.qq.com/s?__biz=MzU5MzcyMjI4MA==&mid=100000800&idx=1&sn=7e5a3c63b697e1eb273c19d96a49af02&chksm...原创 2019-03-02 14:59:30 · 454 阅读 · 0 评论 -
线形表小结(顺序表)
顺序表表结构体(DataType都是所存数据的类型)struct SeqList{ int MAXNUM; //可存放个数 int n; //实际长度 DataType *element;}typedef struct SeqList *PSeqList;//定义结构体指针//创建空顺序表(带参数m就是表空间大小)PSeqList creatNullList_se...原创 2019-02-27 11:14:18 · 360 阅读 · 0 评论 -
栈(普通栈及链栈)
//palist->t来表示当前的数据下标,即可以模拟先进后出的特性//栈数据结构体(最大值,指示当前栈中数的个数t,所存数据类型的指针s)struct SeqStack{ int MAXNUM; int t; DataType * s;};//基本操作压栈void push_seq(PSeqList pastack, DataType x){ /*...原创 2019-03-14 21:21:27 · 389 阅读 · 0 评论 -
字符串简要总结
ADT String isoperations String createNullStr(void) int isNullStr(String s) int length(String s) String concat(String s1,String s2) String subStr_seq(String s,int i, int j) int...原创 2019-03-20 10:39:45 · 224 阅读 · 0 评论 -
队列
ADT Queue isoperations Queue createEmptyQueue(void) int isEmptyQueue(Queue qu) void enQueue(Queue qu, DataType x) void deQueue(Queue qu) DataType frontQueue( Queue qu )end ADT Qu...原创 2019-03-16 20:06:50 · 465 阅读 · 0 评论 -
多项式的加减乘微积分运算简要小结
加法:https://blog.youkuaiyun.com/shujh_sysu/article/details/52150835(一般有三种情况次幂小大等,等的其中一种同次项相加会有为零的分情况)减法:其实和加法思路相同,我们只需要输入多项式的负数就可以了乘法:思路:先用第一个链表的数据乘以第二个链表的数据,储存于新的链表中,然后遍历新的链表,把多项式的值加起来就可以了!参考:...转载 2019-03-19 11:24:11 · 2177 阅读 · 0 评论 -
P1047 装箱问题
题目描述有一个箱子容量为VVV(正整数,0≤V≤200000 \le V \le 200000≤V≤20000),同时有nnn个物品(0<n≤300<n \le 300<n≤30,每个物品有一个体积(正整数)。要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。//————————————————————————————————————————-解法:...转载 2019-03-30 18:03:31 · 402 阅读 · 0 评论 -
P1009高精度阶乘和(C)
题面https://www.luogu.org/problemnew/show/P1009解题思路:数目过大,需要开一维数组进行进位处理。(这样可以有效避免溢出问题)代码如下#include<stdio.h>#include<math.h>#define N 66int main(){ int s[N] = {0}, a[N] = {0}...转载 2019-03-28 09:59:43 · 466 阅读 · 0 评论 -
哈夫曼树
//哈夫曼树的构建方法(MAXINT是一个很大的整数,大于所有权值之和)PHTree huffman(int m, int *w){ PHTree pht; int i,,j,x1,x2,m1,m2; pht = (PHTree)malloc(sizeof(struct HtTree)); if(pht == NULL) {printf("...原创 2019-04-17 11:52:49 · 485 阅读 · 0 评论 -
二叉树的周游方法(1)
//先根次序周游 非递归void nPreOrderE(BinTree t){ Stack s; BinTreeNode *c; if(t == NULL) return ; s = createNullStack(); //创建存储的空链栈 push(s,t); //树根进栈 while(!isEmptyStack(s)){ c = top(s); //顶部出...原创 2019-04-18 16:12:03 · 1118 阅读 · 0 评论 -
二叉树的周游方法(2)
//后跟次序周游 非递归//同一二叉树可能先后两次进栈//设置标志typedef struct{int tag;BinTree t;}Elem;void nPostOrder1(BinTree t){ Stack s; Elem stnode; BinTreeNode *p = t; if(t == NULL) return ; s = createEmptyS...原创 2019-04-18 16:14:47 · 393 阅读 · 0 评论 -
DFS算法小记
( 啊哈!算法 的摘记)DFS深度优先搜索的基本模型: void dfs(int step) { 判断边界 尝试每一种可能 for(i=1;i<=n;i++) { 继续下一步 dfs(step+1) } 返回...转载 2019-02-10 15:10:36 · 738 阅读 · 0 评论