
C语言
江湖人称小鱼哥
这个作者很懒,什么都没留下…
展开
-
C语言版输入两个整数 n 和 sum,从数列1, 2, 3, ... , n 中 随意取几个数,使其和等于 sum,要求将其中所有的可能组合列出来
题目的意思:从1到n中随机选取几个数,让其和等于m根据这句话,选出来的数不能重复,但是选取的个数任意所以可以利用深度优先搜索DFS+回溯来解决其中深度优先搜索算法用来寻找所有可能的组合,而回溯是用来筛选出所有可能组合中的可行解【如果发现某候选解不是可行解,直接丢弃】注:由于选出来的数不能重复,所以在进行深搜时,下一次深搜应是从当前元素的下一个元素继续往后看步骤:1.从第一个元素开始相加2.让局部和继续累加候选的剩余值3.局部和等于目标值,保存组合,向上回退,寻找其它组合.翻译 2021-11-29 02:01:53 · 802 阅读 · 1 评论 -
单链表实现每k个元素逆置
每k个节点头插逆置,下组以当前组逆置后的尾结点为头结点进行头插逆置,依次循环//// Created by gxj on 2021-08-07.//设计一个算法每 K 个元素逆置单链表#include <stdio.h>#include <stdlib.h>typedef struct LNode{ int data; struct LNode *next;}LNode;//带头结点链表创建void List_Create(LNo...原创 2021-08-07 23:15:56 · 673 阅读 · 2 评论 -
插入排序-C实现
插入排序是一种简单直观的排序方法,基本思想是每次将一个待排序的记录按其关键字大小插入前面已排列好的子序列,直至全部记录插入完成。由插入排序的思想引申出三个重要的排序算法:直接插入排序算法...原创 2021-06-12 15:59:21 · 8022 阅读 · 4 评论 -
二叉排序树的查找与插入的递归与非递归C语言实现
今天学习到二叉排序树,课本上提到了二叉排序树的非递归实现,我写了下//// Created by gxj on 2021/4/19.//#include <stdio.h>#include <stdlib.h>#include <string.h>typedef int ElementType;typedef struct BiTNode { ElementType data; struct BiTNode *left, *righ原创 2021-04-19 21:07:33 · 2327 阅读 · 2 评论 -
数据结构C语言-不带头结点的单链表头插法/尾插法创建
最近有点忙,今天才开始看数据结构单链表的部分,由于考研,看了《王道复习指导书》上只讲了带头结点的单链表操作,只是文末提了下不带头节点的什么情况,在此结合王道复习书,电脑上写了运行了下不带头结点的。//// Created by gxj on 2021/3/30.//#include <stdio.h>#include <stdlib.h>typedef int ElementType;//单链表结构体,LNode表示结点,LinkList表示链表,其实两者一样的原创 2021-03-30 15:28:22 · 14871 阅读 · 16 评论 -
C语言里碰到的坑-printf()以及缓冲区刷新问题
因为考研,又拾起多年不碰的c语言,今天让我碰到一个莫名其妙的问题,就是我原本代码里是这样子的。正常情况是代码一运行,会先执行printf()函数,将其内容输出出来,但是结果是控制台上什么都没有。//十进制正整数转化为二进制#include <stdio.h>#define Num 2void main() { int i; printf("请输入一个十进制数:\n"); scanf("%d", &i); int remainder = 0;原创 2021-03-04 23:21:24 · 1116 阅读 · 1 评论