![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C语言算法案例
数据结构
川川菜鸟
我是一位擅长数据科学、人工智能、网站搭建、网络爬虫和软件/接口测试的专家,同时也是畅销书《Python网络爬虫入门到实战》和《Python3编程从零基础到实战》 作者。
展开
-
偶数矩阵判断【C语言作业】
偶数矩阵判断【C语言作业】原创 2023-11-02 22:11:47 · 708 阅读 · 0 评论 -
Dev-C++软件安装与使用教程
文章目录前言前言为什么我推荐使用Dev-C++入门?因为这个软件很简单,好上手,那么一些大佬就来了,为啥不推荐VS2019,个人觉得从小白的角度出发,最好给他们一个很简单的方式学会C语言,到时候再学一下VS软件使用,便是很容易的事。...原创 2021-09-02 02:27:29 · 4890 阅读 · 0 评论 -
cmake安装
官网下载链接:cmake下载window版本:解压后:把bin路径添加到环境变量即可(exe不用你去运行)再到cmd执行:cmake --version原创 2022-01-23 03:03:34 · 1037 阅读 · 0 评论 -
VS2017安装
下载地址:vs2017下载:经过一些列登录…直接到这个链接:vs点击下载后:等他转圈圈暂时就装这两个C:\ProgramData\Microsoft\VisualStudio\Packages下载安装就好了。原创 2022-01-23 15:41:03 · 735 阅读 · 0 评论 -
算法:两个数之和
文章目录题目方法一:暴力破解方法二:哈希表题目给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。例子1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。例子2:输入:nums原创 2021-09-26 01:41:57 · 1119 阅读 · 5 评论 -
14天算法入门第一天:二分查找算法,长文详解,包教包会!
文章目录一、算法详细讲解前言1.1二分查找介绍1.2二分查找条件二、 原理及实现三、时间复杂度四、算法4.1非递归思想4.2递归思想五、Leecode案例六、 总结一、算法详细讲解前言讲解已经非常详细,尽量是让小白都能学会,因此如果你觉得自己算法并不是很好,或者没有基础,那我希望你一定要认真看我写的每一句话,同时要学会自己思考,不然对你也收获不大。1.1二分查找介绍二分查找也叫做折半查找。查找也是有特殊情况的,比如数列本身是有序的。这个有序数列是怎么产生的呢?有时它可能本身就是有序的,也有可能是我原创 2021-08-24 17:55:20 · 1352 阅读 · 8 评论 -
现代化 C/C++ 开发工具 CLion:实在太流畅了,jetbrains永远的神!
文章目录一.前言介绍下载安装配置与激活Hello World中文乱码问题值得注意案例测试美女背景一.前言介绍也许你并不熟悉这一款编译器,但是如果你是pycharm的忠实粉丝,那么你一定知道jetbrains,因为我们用的pycharm就是它的系列之一。作为忠实粉丝,博主在这里带大家体验一把,好用我们就采用,因为vs给我感觉太笨重了。下载安装注意:我详细到了每一步,希望你认真看!’下载地址:https://www.jetbrains.com/clion/下载好后双击:装D盘:配置原创 2021-08-28 04:57:02 · 45401 阅读 · 45 评论 -
C语言顺序表,合并并排序(代码注释讲解)
/*.已知有两个按元素值递增有序的顺序表A和B,设计一个算法将表A和表B的全部元素归并为一个按元素值非递减有序的顺序表C。要求:从键盘输入顺序表A和B的各元素,编程实现上述算法,输出顺序表A、顺序表B和顺序表C 的所有元素值 。*/#include<stdio.h>#include <stdlib.h>#include<iomanip>#include<iostream>#pragma warning(disable:4996)typede原创 2021-03-29 13:28:15 · 4032 阅读 · 0 评论 -
C语言顺序表:奇数放偶数前
#include<stdio.h>#pragma warning(disable:4996)using namespace std;#define MAXSIZE 20typedef int ElemType;typedef struct{ ElemType data[MAXSIZE];//最长为20个 int len;} SqList;//定义结构体变量void move(SqList & sq){ ElemType t;原创 2021-03-29 13:32:24 · 2026 阅读 · 2 评论 -
创建树,中序输出
#include<iostream>using namespace std;typedef int KeyType;typedef struct { KeyType key;} ElemType;typedef struct BitNode { ElemType data; struct BitNode* lchild, * rchild;}BitNode, * BiTree;BiTree insert(BiTree b, BiTree s){原创 2021-07-07 19:15:11 · 367 阅读 · 0 评论 -
有序序列的查找
#include "stdio.h"#include<iostream>#define MAX 100using namespace std;int Binary_Search(const int* array, int n, int key){ int low = 1; int high = n; int mid; while (low <= high) { if (array[0] < array[1])原创 2021-07-07 19:13:29 · 639 阅读 · 0 评论 -
根据顶点边数和点信息输出邻接矩阵
// ConsoleApplication23.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <iostream> #include<malloc.h>using namespace std;#define MAXVEX 100typedef char VertexType;typedef int EdgeType;typedef struct{原创 2021-07-07 19:09:56 · 1018 阅读 · 0 评论 -
无向图邻接表(深度优先算法)
#include <iostream>using namespace std;#define MaxVertexNum 100// 最大顶点数为100#define VertexType char//顶点域为字符型int visited[MaxVertexNum];//标记结点是否被访问过typedef struct enode//边表中的结点{ int adjvex;//边表顶点域 struct enode* next;//指针域}EdgeNode;typedef st原创 2021-07-07 19:04:34 · 1234 阅读 · 0 评论 -
边缘算法检测
边缘算法检测。注意事项:前提是你配置好了opencv,如何配置请看我之前发过的文章。#include<iostream>#include <opencv2/core/core.hpp>#include <opencv2/highgui/highgui.hpp>using namespace cv;int main(){ // 读入一张图片 Mat img = imread("C://Users//hp//Downloads//s.jpg"); // 创建原创 2021-07-07 19:01:45 · 320 阅读 · 0 评论 -
邻接矩阵求顶点度
#include <iostream>//蓝多多算法实验六#include<malloc.h>using namespace std;#define MAXVEX 100//最大顶点数typedef char VertexType;//顶点类型typedef int EdgeType;//边的权值typedef struct{ VertexType vexs[MAXVEX];//顶点表 EdgeType edges[MAXVEX][MAXVEX];//邻接矩阵 i原创 2021-07-07 18:59:04 · 3219 阅读 · 0 评论 -
求叶子节点个数
#include<stdio.h>#include<stdlib.h>typedef struct Bitnode{ char data; struct Bitnode* lchild, * rchild;}Bitnode, * Bitree;void PreOrd(Bitree T){ if (T == NULL) return; printf("%c", T->data); PreOrd(T->lchild); PreOrd(T->r原创 2021-07-07 18:57:32 · 707 阅读 · 0 评论 -
二叉树前中后遍历
#include <stdio.h>#include <malloc.h>typedef char ElemType;//二叉树数组类型为字符//二叉树定义typedef struct node{ ElemType data;//节点信息 struct node* lchild, * rchild;//左右儿子,增加,*parent双亲指针就是三叉链}Bnode,*BTree;//初始化二叉链void InitBTree(BTree& BT){ B.原创 2021-07-07 18:56:02 · 345 阅读 · 0 评论 -
输入一段字符串,字母入队,数字出队
有问题留言// 实验四.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <stdio.h>#define QueueSize 100typedef char ElemType;typedef struct{ ElemType data[QueueSize]; int front;//头 int rear;//尾}SqQueue;//初始化void InitQueue(SqQueue& qu){原创 2021-07-07 18:53:33 · 584 阅读 · 2 评论 -
根据序列,进行中后序列输出
#include <locale.h>#include <stdio.h>#include <stdlib.h>#include <malloc.h>typedef struct BiTNode {//二叉树结点 char data; //数据 struct BiTNode* lchild, * rchild; //左右孩子指针} BiTNode, * BiTree;int nn = 0;原创 2021-07-07 18:48:30 · 331 阅读 · 0 评论 -
c语言抢红包小游戏
有问题留言#include <stdio.h>#include <stdlib.h>#include <time.h>int main(){ while (1) { printf_s("请输入数字:\n"); printf_s("1:抢红包\n"); printf_s("2:退出程序\n"); int a; scanf_s("%d", &a); if (a == 1) { printf_s("请输入数字:\n");原创 2021-07-07 18:45:55 · 914 阅读 · 0 评论 -
C语言冒泡排序
#include <stdio.h>int main(){ int a[10]; int i, j; int temp; printf("请输入10个整数:"); for (i = 0; i < 10; i++) { scanf_s("%d", &a[i]); } for (i = 0; i < 9; i++) { for (j = 0; j < 9 - i; j++) { if (a[j] > a[j + 1]) {原创 2021-07-07 18:36:02 · 346 阅读 · 0 评论 -
判断正负数个数
#include<stdio.h>int main(){ float c; int z = 0,f=0, n = 0, i = 0;//z为正数,f为负数,n为要输入的数,i控制最长多少 printf_s("输入数据:"); while (i<20&&i!='0')//循环判断 { scanf_s("%d", &n); if (n == 0) break; else if (n > 0) z++; else f++; } pr原创 2021-07-07 18:28:19 · 959 阅读 · 0 评论 -
数据结构 校园导游
题目6:校园导游咨询 实验类型(验证/设计/创新):设计 学时:16课程设计内容:设计一个校园导游程序,为来访的客人提供各种信息查询服务。要求:4.设计上海工程技术大学的校园平面图,所含景点不少于10个。各景点信息包括代号、名称、简介等信息。5.为来访客人提供图中任意景点相关信息的查询(利用不同的遍历方法)。6.为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。课程设计要求:熟练掌握最短路径的求解方法;能够运用最短路径的求解方法实现校园导原创 2021-07-07 13:54:49 · 1385 阅读 · 1 评论 -
数据结构 哈夫曼编码/译码器
题目8:哈夫曼编码/译码器 实验类型(验证/设计/创新):设计 学时:16课程设计内容:设计一个哈夫曼编码/译码系统,对一个文本文件中的字符进行哈夫曼编码,生成编码文件;反过来,可将一个编码文件译码还原为一个文本文件(.txt)。要求:7.输入一个待压缩的文本文件名, 统计文本文件中各字符的个数作为权值,生成哈夫曼树;8.将文本文件利用哈夫曼树进行编码,生成压缩文件;9.输入一个待解压的压缩文件名称,并利用相应的哈夫曼树将编码序列译码;10.可显示指定的压缩文件和文本文件;课程原创 2021-07-07 13:51:54 · 2875 阅读 · 3 评论 -
约瑟夫生者死者游戏 数据结构作业
题目1:约瑟夫生者死者游戏 实验类型(验证/设计/创新):设计 学时:10课程设计内容:有N个旅客同乘一条船,因为严重超载,加上风高浪大,危险万分;因此船长告诉乘客,只有将全船一半的旅客投入海中,其余人才能幸免于难;无奈,大家只得同意这种办法,并议定N个人围成一圈,由第一个人开始,依次报数,数到第9人,便把他投入大海中,然后再从他的下一个人开始,数到第9人,再把他投入大海中,如此循环地进行,直到剩下N/2个乘客为止。问哪些乘客是将被投入大海的?输出这些乘客的姓名和位置。课程设计要求:原创 2021-07-07 13:48:17 · 1068 阅读 · 0 评论 -
通讯录中每个通讯者的信息包括编号、姓名、性别、电话、E-mail地址;采用单链表结构存储
通讯录中每个通讯者的信息包括编号、姓名、性别、电话、E-mail地址;采用单链表结构存储,实现以下功能:1.通讯录的建立2.通讯者信息的插入3.通讯者信息的查询4.通讯者信息的删除5.通讯录的输出其中,通讯者信息的查询包括按编号查询和按姓名查询;通讯录的输出按编号排序。并要求每个功能是一个模块,有主控菜单,可使用数字来选择菜单项,分别进入相应的功能。个人数据结构课程设计作业,如遇到本校校友,还请稍微更改。交流群:970353786#include <stdio.h>#inc原创 2021-07-01 16:21:28 · 4846 阅读 · 2 评论 -
两小时写完vs2019永久配置opencv完整图文教程(小白也能看懂)
这篇文章已经写得很详细,花了我一个多小时,希望能认真看,没有问题,认真看完每一张图片,不要偷懒,偷懒就失败。1-官网下载opencv:https://github.com/opencv/opencv/releases点开网址下载window:2-解压安装双击它:(安装路径自行选择,但不要忘记装在哪里了)点击后就等待ing…出来了:3-加入环境变量:(看图)(记得加入后确认)4-创建新项目,x86改为x64(看图)5- 视图 -> 其他窗口 -> 属性管理器,打开属性原创 2021-06-04 22:42:56 · 1759 阅读 · 5 评论 -
单链表找最大值
//群:970353786#include<iostream>using namespace std;typedef struct LNode //定义结构{ int data; //数据 struct LNode* next; //指针}LNode, * LinkList;void InitList(LinkList& L, int n) //创建链表{ L = new LNode; //分配内存 L-&原创 2021-05-17 01:50:18 · 6078 阅读 · 0 评论 -
顺序表合并
/*.已知有两个按元素值递增有序的顺序表A和B,设计一个算法将表A和表B的全部元素归并为一个按元素值非递减有序的顺序表C。要求:从键盘输入顺序表A和B的各元素,编程实现上述算法,输出顺序表A、顺序表B和顺序表C 的所有元素值 。*///群:970353786#include<stdio.h>#include <stdlib.h>#include<iomanip>#include<iostream>#pragma warning(disable原创 2021-05-17 01:49:12 · 1093 阅读 · 0 评论 -
任意进制转换
//群:970353786#include "stdio.h"#include<iostream>using namespace std;#define StackSize 100typedef char ElemType;typedef struct{ ElemType data[StackSize]; int top;}SqStack;int trans(int d, int b, char string[]) //string用于存放转换后的字符串{原创 2021-05-17 01:45:53 · 348 阅读 · 0 评论 -
回文判断
//群:970353786#include"stdio.h"#include"stdlib.h"typedef char ElemType;typedef struct stnode{ ElemType data; struct stnode* next;}StNode, * LinkStack;int huiwen(char str[]){ int i = 0; char ch; StNode* sl = NULL, * p; while ((ch = str[i++]) !=原创 2021-05-17 01:44:43 · 338 阅读 · 0 评论 -
指针定义和理解
// 指针1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//键盘输入两个数,用指针将两个数输出 群:970353786#include <stdio.h>int main(){ int a, b;//定义变量 int* p1, * p2;//声明指针变量 printf_s("请输入两个数字,中间记得逗号隔开:"); scanf_s("%d,%d", &a, &b);//输入两个数 p1 = &a;//将地址赋给指针变量,原创 2021-05-17 01:43:15 · 378 阅读 · 0 评论 -
线性表删除第i个元素
// 删除.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//群:970353786#include <stdio.h>#include <malloc.h>#define Maxsize 100typedef int ElemType;//定义别名 typedef struct Sqlist{ ElemType data[Maxsize]; int len;//当前长度 };//初始化线性表void Initlist(Sql原创 2021-05-17 01:40:46 · 5767 阅读 · 0 评论 -
malloc函数使用理解
// malloc.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//群:970353786#include <stdlib.h>#include<stdio.h>int main(){ int* a = (int*)malloc(sizeof(int));//使用malloc分配空间给指针a * a = 50;//使用该空间保存数据 printf_s("%d\n", *a);//打印保存的数据原创 2021-05-17 01:39:05 · 526 阅读 · 0 评论 -
free函数使用理解
// free函数.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <stdio.h>#include<stdlib.h>int main(){ int* pt; pt = (int*)malloc(sizeof(pt));//分配空间 *pt = 100; printf("%d\n", *pt); free(pt);//释放空间 printf("%d\n", *pt);//释原创 2021-05-17 01:37:45 · 644 阅读 · 0 评论 -
线性表从第i个元素插入
// 链表2.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//群:970353786#include <stdio.h>#include <malloc.h>#define Maxsize 100typedef int ElemType;typedef struct Sqlist{ ElemType data[Maxsize]; int len;};//初始化线性表void Initlist(Sqlist& sq){原创 2021-05-17 01:35:39 · 2647 阅读 · 1 评论 -
线性表查找第i个元素
// 删除.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//群:970353786#include <stdio.h>#include <malloc.h>#define Maxsize 100typedef int ElemType;//定义别名 typedef struct Sqlist{ ElemType data[Maxsize]; int len;//当前长度 };//初始化线性表void Initlist(Sql原创 2021-05-17 01:33:59 · 2656 阅读 · 0 评论 -
单链表:求所有不及格人数的累计数
#include<iostream>#include<malloc.h>#include <iomanip>using namespace std;typedef int ElemType;#define M 20typedef struct LNode{ ElemType data; //定义数据与 struct LNode* next; //指针域}LNode, * LinkList;void CreateLink(LinkList& h原创 2021-04-19 12:51:54 · 591 阅读 · 1 评论 -
C语言: 定义一个函数int isprime(int n),用来判别一个正整数n是否为素数。在主函数中输入两个正整数m和n(m>=1,n>m),统计并输出m和n之间的素数的个数以及这些素数的和。
原题:定义一个函数int isprime(int n),用来判别一个正整数n是否为素数。在主函数中输入两个正整数m和n(m>=1,n>m),统计并输出m和n之间的素数的个数以及这些素数的和。输入输出示例输入:2 10输出:count = 4 ,sum = 17代码:在这里插入代码片```c#include<stdio.h>int isprime(int n){ int i=2; for(原创 2020-12-05 00:00:59 · 5258 阅读 · 2 评论 -
C语言: 输入一批正整数(以零或负数为结束标志),求其中的奇数和。要求定义和调用函数int even(int n)判断整数n的奇偶性,当为奇数时返回1,否则返回0。
我是川川,QQ2835809579,有问题留言or私我原题:输入一批正整数(以零或负数为结束标志),求其中的奇数和。要求定义和调用函数int even(int n)判断整数n的奇偶性,当为奇数时返回1,否则返回0。输入输出示例输入:11 3 7 6 8 9 11 0输出:sum = 41代码:#include <stdio.h>#include <stdlib.h>int even(int n){ return n %2 ==0?1: 0;}int main原创 2020-12-04 23:54:22 · 25558 阅读 · 9 评论