- 博客(6)
- 收藏
- 关注
原创 利用栈将二进制转化成十进制和八进制
将每一位出栈取出进行运算: // // main.c // Bin2Dec // // Created by yaomingzhu on 2020/9/15. // Copyright © 2020 wangping. All rights reserved. // #include <stdio.h> #include <stdlib.h> #include <math.h> #define STACK_INIT_SIZE 20 #define STACKI
2020-09-15 13:18:03
188
原创 利用循环链表打印拉丁方阵
拉丁方阵: 拉丁方阵是一种nxn的方阵,方阵中恰好有n种不同的元素,每种元素恰好有n个,并且每种元素在一行和一列中恰好出现一次。 如下表为一3X3的拉丁方阵: 1 2 3 2 3 1 3 1 2 解决拉丁问题主要有两个步骤: 1、创建一个长度为n的循环链表: 1->2->3->4->5->…->n->1 2、将创建的循环链表按照一定的规则打印出来: 方阵总共有n行,第n行从循环链表的第n个结点开始打印。 以下为代码: // // main.
2020-09-13 07:32:59
241
原创 用循环链表解决魔术师发牌问题
// // main.c // Magician // // Created by wangping on 2020/9/12. // Copyright © 2020 wangping. All rights reserved. // #include <stdio.h> #include <stdlib.h> #define CardNumber 13 typedef struct Node { int data; struct Node *next;
2020-09-12 21:45:25
213
原创 利用循环链表解决约瑟夫问题
约瑟夫问题:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从。首先从一个人开始,越过k-2个人(因为第一个人已经被越过),并杀掉第k个人。接着,再越过k-1个人,并杀掉第k个人。这个过程沿着圆圈一直进行,直到最终只剩下一个人留下,这个人就可以继续活着。
2020-09-12 10:34:52
218
原创 循环链表的初始化、插入、删除等操作
附上循环链表的初始化、元素插入和删除等操作。 // // main.c // CLinkList // // Created by wangping on 2020/9/10. // Copyright © 2020 wangping. All rights reserved. // #include <stdio.h> #include <stdlib.h> typedef int Elemtype; // 定义结构体 typedef struct CLinkList
2020-09-12 10:29:21
1018
原创 链表的初始化、插入、删除、查询等操作(详细!)
链表的初始化、插入、删除、查询等操作(详细!) 最近在学习数据结构和算法,为了提高对代码的理解,把自己手写的代码分享出来,以下是代码: // // main.c // List_0911 // // Created by wangping on 2020/9/11. // Copyright © 2020 yaomingzhu. All rights reserved. // #include <stdio.h> #include <stdlib.h> #include &
2020-09-11 19:32:11
1388
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅