
数据结构NOJ
文章平均质量分 64
夏至夏至520
人说心如刀割,钻石要琢磨
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【数据结构】NOJ010 k阶斐波那契数列
//【数据结构】NOJ010 k阶斐波那契数列 //顺序循环队列 #include <stdio.h> #include <stdlib.h> #include <stdbool.h> typedef int ElemType; //队列元素类型 typedef struct queue{ //定义队列 ElemType *...原创 2018-05-25 16:07:00 · 702 阅读 · 0 评论 -
【数据结构】NOJ009 循环队列
这题,我靠,我真是服了 从没见过如此厚颜无耻之题 题中明明白白写着:如果队列满,输出yes,否则输出no 在Sample Input里:yes就变成了输入你敢信?需要用cin>>s读入的那种输入…… 虚假的题意: 真实的题意: 就为了这么一个错误,硬是逼得我写了一段随机生成输入测例的程序,找了一段网上AC的代码,打算比对俩输出文件的差异,直到发现那段AC的代码怎么啥也不输出……才发...原创 2019-04-02 22:41:30 · 1589 阅读 · 3 评论 -
【数据结构】NOJ008 逆波兰式
栈的经典三题: 1、逆波兰式计算(需要一个数字栈) 2、中缀表达式转逆波兰式(需要一个运算符栈) 3、中缀表达式计算(需要一个数字栈和一个运算符栈) 本题是上面的第二题,难度适中,需要用到一个运算符栈 代码中为了判断当前字符是否为字母,自己编写了一个isAlpha()函数,其实也可以直接调用头文件里的isalpha()函数进行判断。 另外,编写了一个isLower(x,y)函数,用来判断两个运算符...原创 2019-04-02 22:08:41 · 1308 阅读 · 1 评论 -
【数据结构】NOJ007 表达式括号匹配
#include <iostream> #include <stdio.h> #include <stdlib.h> using namespace std; typedef char ElemType; //栈的顺序存储 typedef struct node { ElemType data; struct node* next; }SN...原创 2019-04-02 21:57:38 · 1058 阅读 · 0 评论 -
【数据结构】NOJ006 LOCATE操作
数据结构:双向循环链表 存储结构:链式存储 选择链式存储原因:节点要用freq域,用数组太麻烦 实现的操作:插入节点、访问节点、被访问节点需要往链表头移动 需要注意的地方:题中没有写清楚:当两个节点的prec相同时,该用什么顺序排列 比如下面这种情况: 假设用(val,freq)代表一个节点 假设原始链表为这样: (头)→(1,2)→(2,1)→(3,0)→(4,0) 那么,访问了一次4后,节点4...原创 2019-04-02 21:53:40 · 1248 阅读 · 0 评论 -
【数据结构】NOJ005 单链表的删除
从A表中删除那些又在B表又在C表的元素 这跟【顺序表的删除】几乎一个道理,但是链表的删除更简单(不用移动元素),所以正常从前往后遍历就行了 应该专门写一个函数来初始化并输入链表的……然而懒,宁愿复制三遍orz #include <iostream> #include <stdlib.h> using namespace std; typedef struct node ...原创 2019-04-02 21:30:50 · 1363 阅读 · 0 评论 -
【数据结构】NOJ004 单链表的归并
两个递增链表→一个递减链表 这道题用了个诡计,在建立La、Lb两个链表时,用的是头插法 比如输入1、2、3、4、5 每次输入新节点都插在头部,最后链表就变成了5、4、3、2、1 然后直接用尾插法归并就可以了 避免了【先归并,再逆置】这么麻烦的做法 或者也可以:先用尾插法输入两个链表,归并时用头插法 #include <iostream> #include <stdlib.h>...原创 2019-04-02 21:25:13 · 979 阅读 · 1 评论 -
【数据结构】NOJ003 顺序表的删除
题目:在数组a中,删去那些b和c的共同元素 方法: 设数组a、b、c的下标分别为i、j、k 从数组b和c的后面往前找,如果找到相同元素x 就从数组a的后面往前找这个元素x 如果找到了,删除x 如果没找到,就继续遍历数组b和c 直到i、j、k有一个为负为止 从后往前找的原因是,感觉这样移动的元素会少一点 在算法中,时刻要防止a[-1]这种情况的出现,也就是始终要检查下标是否越界(虽然测例里貌似没有这...原创 2019-04-02 21:15:26 · 917 阅读 · 0 评论 -
【数据结构】NOJ002 线性表的就地逆置
#include <iostream> #include <stdlib.h> using namespace std; //一维数组存储 int LArray[1001]; //链式存储 typedef struct node { int val; struct node *next; }*LNode; int main() { //初始化 ...原创 2019-04-02 21:05:05 · 778 阅读 · 0 评论 -
【数据结构】NOJ001 顺序表的插入运算
#include <iostream> using namespace std; int main() { //输入 int l[1001]; int n; cin>>n; for(int i=0; i<n; i++) cin>>l[i]; int x; cin>>x; ...原创 2019-04-02 20:49:34 · 1167 阅读 · 0 评论 -
【转】【数据结构】循环右移
【转自https://blog.youkuaiyun.com/hrbeuwhw/article/details/7851941】 【题目】有一个整数数组,现要求实现这个整数数组的循环右移。如:1,2,3,4,5 则循环右移两位后结果是:4,5,1,2,3。 方法一:(最最容易想到的办法) void RightCircleShift_00(intbuffer[],int shift) { i...转载 2018-05-26 18:48:40 · 840 阅读 · 1 评论 -
【数据结构】NOJ016 计算二叉树叶子节点数目
//【数据结构】NOJ016 计算二叉树叶子节点数目 #include <stdio.h> #include <stdlib.h> //二叉链表 typedef char ElemType; typedef struct TNode { ElemType info; struct TNode *lchild; struct TNode *rchil...原创 2018-06-08 16:30:50 · 1031 阅读 · 0 评论 -
【数据结构】NOJ015 建立二叉树的二叉链表存储结构
//【数据结构】NOJ015 建立二叉树的二叉链表存储结构 #include <stdio.h> #include <stdlib.h> //二叉链表 typedef char ElemType; typedef struct TNode { ElemType info; struct TNode *lchild; struct TNode *r...原创 2018-06-08 15:48:06 · 1631 阅读 · 0 评论 -
【数据结构】NOJ014 求广义表深度
//【数据结构】NOJ014 求广义表深度 //表头-表尾表示法 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdbool.h> //广义表定义 typedef char Atomtype; typedef enum{ATOM,LIST}NodeT...原创 2018-06-06 17:07:54 · 1159 阅读 · 0 评论 -
【数据结构】NOJ013 以十字链表为存储结构实现矩阵相加(1.0)
//【数据结构】NOJ013 以十字链表为存储结构实现矩阵相加 #include <stdio.h> #include <stdlib.h> //十字链表 typedef int ElemType; //元素类型 typedef struct LNode{ int Row,Col; //行数、列数 ElemType Elem; //元素 ...原创 2018-05-27 10:30:44 · 1172 阅读 · 0 评论 -
【数据结构】NOJ011 循环右移
//【数据结构】NOJ011 循环右移 //用的是最蠢的每次右移1个单位 #include <stdio.h> #include <stdlib.h> int main() { int n,k; scanf("%d %d",&n,&k); int a[n+1]; int i; for(i=1;i<n+1;i++...原创 2018-05-26 18:43:02 · 901 阅读 · 0 评论 -
【数据结构】NOJ012 以三元组表为存储结构实现矩阵相加
//【数据结构】NOJ012 以三元组表为存储结构实现矩阵相加 //稀疏矩阵三元组_顺序存储 #include <stdio.h> #include <stdlib.h> //稀疏矩阵三元组 //顺序存储 #define MAXSIZE 100 typedef int ElemType; typedef struct{ int Row,Col; ...原创 2018-05-26 12:35:13 · 1617 阅读 · 0 评论 -
【数据结构】NOJ010 k阶斐波那契数列
这是我去年五月份写的这道题:【数据结构】NOJ010 k阶斐波那契数列 下面是我今年三月份写的这道题:原创 2019-04-02 22:56:28 · 956 阅读 · 0 评论