![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
一只水熊虫
龙蛇之变,木雁之间
展开
-
对指定字符串进行快速排序
字符串的快速排序输入N(N<=100)个字符串(长度不超过20)进行从小到大排序,要求排序算法使用快速排序并输出。#include <stdio.h>#include <stdlib.h>#include <string.h>void quicksort(char *a[],int low,int high);int partition(char *a[],int low,int high);int main(){ int n,i=0;原创 2022-03-23 12:09:14 · 1917 阅读 · 0 评论 -
字符串的冒泡排序
标题字符串的冒泡排序本题要求使用冒泡排序法并对任意给定的K(<N)个整数按从小到大排序,输出扫描完第K遍后的中间结果序列。输入格式:输入在第1行中给出N和K(1≤K<N≤100),此后N行,每行包含一个长度不超过10的、仅由小写英文字母组成的非空字符串。输出格式:输出冒泡排序法扫描完第K遍后的中间结果序列,每行包含一个字符串。输入样例:6 2bestcateastafreeday输出样例:bestacatdayeastfree实现代码: #in原创 2022-03-22 16:59:42 · 1521 阅读 · 0 评论 -
计算最大公约数和最小公倍数的函数
判断最大公约数//最大公约数,可以用递归写int gcd(int m,int n){ if(m%n==0){ return n; }else{ return gcd(n,m%n); }}判断最小公倍数//最下公倍数int lcm(int m,int n){ int k=gcd(m,n); //使用上面判读最大公约数的函数 return m*n/k; }}...原创 2022-03-22 14:37:00 · 942 阅读 · 0 评论 -
计算二叉树的深度和宽度
计算二叉树的宽度typedef struct BiTNode{ ElemType data; struct BiTNode;}BiTNode;typedef struct SqNode{ BiTNode *t; int lno;}SqNode;typedef struct SqQueue{ SqNode data[MaxSize]; int rear,front;}SqQueue;int Length(BiTNode T){ SqQueu原创 2022-03-20 18:39:17 · 1170 阅读 · 0 评论 -
关于面向对象和面向过程的认识
一、面向对象的特点什么是对象,简单来说对象就是现实世界存在的任何事务都可以称之为对象,有着自己独特的个性。 用思维导图来简洁表示一下就是这样:面向对象就是构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。二、面向过程的特点什么是过程,我认为过程就是步骤,是解决问题的按部就班。面向过程用图片表示: 面向过程不同于面向对象,面向过程分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用原创 2022-03-18 20:58:26 · 82 阅读 · 0 评论 -
快速排序代码
快速排序代码://快速排序void QuickSort(ElemType A[],int low,int high){ if(low<high){ int pivotpos=Partition(A,low,high) QuickSort(A,low,pivotpos-1); QuickSort(A,pivotpos+1,high); }}int Partition(ElemType A[],int low,int high){原创 2022-03-16 10:45:52 · 212 阅读 · 0 评论 -
自增运算符(++)和自减运算符(--)
自增运算符(++)和自减运算符(–)——有两个功能:(1)、使变量的值增1或减1例如,设n是一个整型变量并已赋值,则++n和n++都相当于n=n+1;–n和n–都相当于n=n-1;(2)取变量的值作为表达式的值例如,计算表达式++n和n++的值,则++n的运算顺序是:先执行n=n+1,再将n的值作为表达式++n的值;n++的运算顺序是:先将n的值作为表达式n++的值,再执行n=n+1;注: 自增运算符和自减运算符的运算对象只能是变量,不能是常量或表达式,形如3++或++(i+j)都是非法的原创 2022-03-16 10:42:57 · 1510 阅读 · 0 评论 -
二叉树和图的基础操作
树和图的基础操作:二叉树:#define MaxSize 50二叉链表typedef struct BiTNode{ ElemType data; struct BiTNode *lchild,*rchild,*parent;}BiTNode,*BiTree;栈(top从0开始,指向下一个结点)typedef struct SqStack{ ElemType data[MaxSize]; int top;}SqSatck;队列typedef struct原创 2022-03-14 15:07:09 · 1526 阅读 · 0 评论 -
p,*p和&p,&a的关系
p, * p ,&p , &a 的关系:当定义一个整形变量p时,p的前面有 * 符号,这个 * 符号就把变量p限制为它只能存放一种类型的整数,就是所谓的地址;当 * p出现在不是定义含义的语句时, * 一般表示间接访问符的意思,变量a中存放了一个数2,a占用的内存空间地址是0061FF1C,变量p存放的是a的内存空间地址0061FF1C,但是p也是一个变量,也占用4个字节的内存空间,&p可查看p的地址,&a可查看a的地址,p中又存放着a的地址,*p 表示访问p中所存的地址处原创 2022-03-12 11:46:21 · 604 阅读 · 3 评论 -
计算二叉树的深度
int Depth(BiTree T){ int m, n; if (T == NULL) return 0; //如果是空树,深度为0,递归结束 else { m = Depth(T->lchild); //递归计算左子树的深度记为m n = Depth(T->rchild); //递归计算右子树的深度记为n if (m > n) return (m + 1); //原创 2022-03-09 23:15:36 · 442 阅读 · 0 评论 -
判断从x城市到有没有到达y城市的安全路径
题目:判断从x城市到有没有到达y城市的安全路径代码:#include <stdio.h>#include <string.h>#define MaxVerNum 100typedef struct MGraph{ //邻接矩阵定义 int Vex[MaxVerNum]; int Edge[MaxVerNum][MaxVerNum]; //存储城市道路的联通情况 int vexnum,a原创 2022-03-09 14:43:05 · 109 阅读 · 0 评论 -
返回数组第K大的数,要求Nlog2N时间复杂度
返回指定的整数数组中第k大的数,时间复杂度为Nlog2N#include <stdio.h>int funKth(int d[],int n,int k);int partition(int a[],int low,int high);void quick_sort(int a[],int low,int high);int main(){ int d[]={13,48,43,96,96,98,}; int number,k; printf("Enter原创 2022-03-09 01:38:29 · 250 阅读 · 0 评论 -
建立学生成绩单向链表
建立学生单项链表(简单版)原创 2022-03-08 16:49:39 · 2883 阅读 · 1 评论