ZhanYunXin
码龄6年
关注
提问 私信
  • 博客:11,156
    11,156
    总访问量
  • 22
    原创
  • 1,992,813
    排名
  • 4
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2019-02-27
博客简介:

qq_44700756的博客

查看详细资料
个人成就
  • 获得5次点赞
  • 内容获得3次评论
  • 获得30次收藏
创作历程
  • 22篇
    2020年
成就勋章
兴趣领域 设置
  • 前端
    javascript
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

统计字符串数组中所有单词出现的次数

#include <string.h>#include <stdlib.h>#include <iostream>#define N 20#define MAX 10000 typedef struct { char word[N]; int count; }Word;int check(char ch){ if((ch>='A' && ch<='Z') || (ch>='a' && ch<
原创
发布博客 2020.11.15 ·
673 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

2020-11-14

#include <string.h>#include <stdlib.h>#include void swap(char *a,char *b){char tmp=*a;*a=*b;*b=tmp;}void AllRange(char *str,int k,int m){if(k==m){printf("%s
",str);}else{int i;for(i=k;i<=m;i++){swap(&str[i],&str[
原创
发布博客 2020.11.14 ·
101 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

m个数的全排列

#include <string.h>#include <stdlib.h>#include <iostream> void swap(char *a,char *b){ char tmp=*a; *a=*b; *b=tmp;} void AllRange(char *str,int k,int m){ if(k==m) { static int s_i=1; printf("第%d个排列是%s
",s_i++,str); } e
原创
发布博客 2020.11.14 ·
271 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

从n个数中抽取r个数的组合

#include <string.h>#include <stdlib.h>#include <iostream>void Combine(int n,int r,char a[],int b[],int R){ if(r==0) { int i=0; while(i<R) { printf("%c",a[b[i++]]); } printf("
"); } else { int j; for(j=n;j&
原创
发布博客 2020.11.14 ·
658 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2020-11-14

根据前缀表达式构建一个二叉树,其后序遍历就是它的后缀表达式建树:从前缀表达式第一位往后建#include <string.h>#include <stdlib.h>#include <iostream> typedef struct btnode{ char data; struct btnode *lchild; struct btnode *rchild;}btnode;char A[]="*+ab/cd";int n=strlen(A)
原创
发布博客 2020.11.14 ·
80 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

后缀表达式转前缀表达式

根据后缀表达式构建一个二叉树,其前序遍历就是它的前缀表达式#include <string.h>#include <stdlib.h>#include <iostream> typedef struct btnode{ char data; struct btnode *lchild; struct btnode *rchild;}btnode;char A[]="abc*+def/*/";int n=strlen(A)-1;int ju
原创
发布博客 2020.11.13 ·
1039 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

中缀转前缀表达式

/中缀转前缀:进栈元素:) + * - /进栈规则:从后往前扫中缀表达式若栈顶元素比目前元素的优先级小,出栈,直到优先级相等;若栈顶元素与当前元素优先级相等,入栈;若当前元素为’)‘入栈若当前元素为’(’,出栈顶元素直到遇到’)‘位置,并且’('不表达遇到操作数直接入栈/#include <stdio.h>#include <math.h>#include <stdlib.h> #define N 10void fun(char A[]){ c
原创
发布博客 2020.11.13 ·
453 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

前缀表达式的计算

/前缀表达式计算:中缀表达式为 a-(b+c)(d/e) 前缀表达式为 -a*+bc/de中缀表达式储存在数组A[]中,创建栈stack[],从后往前扫,从数组中取出字符,遇到数字进栈,遇到运算符就出栈两次,进行计算,计算结果入栈注意字符类型转换*/#include <stdio.h>#include <math.h>#include <stdlib.h>#define N 100int judge_char(char c){ switch(c) {
原创
发布博客 2020.11.13 ·
2890 阅读 ·
0 点赞 ·
1 评论 ·
3 收藏

计算中缀表达式、中缀转后缀表达式、中缀转前缀表达式一般思想

计算中缀表达式、中缀转后缀表达式、中缀转前缀表达式一般思想:两个栈:临时存储stack[ ], 结果存储result[ ]stack进栈元素:计算中缀表达式,中缀转后缀 :( + * - /中缀转前缀:) + * - /stack进栈规则:计算中缀表达式,中缀转后缀:从前往后扫表达式若当前元素为’(‘入栈若当前元素为’)’,出栈顶元素直到遇到’(‘位置,并且’)'不表达中缀转前缀:从后往前扫表达式若当前元素为’)‘入栈 ,若当前元素为’(’,出栈顶元素直到遇到’)‘位置,并且’('
原创
发布博客 2020.11.13 ·
137 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

中缀转后缀表达式

/中缀转后缀:进栈元素:( + * - /进栈规则:若栈顶元素比自己的优先级小,出栈,直到优先级相等;若栈顶元素优先级相等,入栈;若当前元素为’(‘入栈 ,若当前元素为’)’,出栈顶元素直到遇到’(‘位置,并且’)'不表达遇到操作数直接表达/#include <stdio.h>#include <math.h>#include <stdlib.h> #define N 10void fun(char A[]){ char stack[N]; in
原创
发布博客 2020.11.13 ·
72 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

中缀表达式的计算

/*中缀表达式计算:中缀表达式为 (a+b)*c中缀表达式储存在数组A[]中,创建栈stack1[]用来存放运算符,从数组中取出字符:如果是’+’ ‘-’,栈顶元素出栈,直到栈空或者 ‘**’ ‘/’,再入栈如果是 * ‘/’,如果栈顶是 * /,出栈直到栈空或者 * /,再入栈如果是’(‘入栈如果是’)'出栈直到遇到 ‘(’创建stack2[ ]用来存放数字注意字符类型转换 */#include <stdio.h>#include <math.h>#i
原创
发布博客 2020.11.12 ·
1014 阅读 ·
0 点赞 ·
1 评论 ·
1 收藏

后缀表达式计算

/后缀表达式计算:中缀表达式为 a-(b+c)(d/e) 后缀表达式为 abc+de/-后缀表达式储存在数组A[]中,创建栈stack[],从数组中取出字符,遇到数字进栈,遇到运算符就出栈两次,进行计算,计算结果入栈注意字符类型转换/#include <stdio.h>#include <math.h>#include <stdlib.h>#define N 9 int judge_char(char c){ switch(c) { case
原创
发布博客 2020.11.12 ·
420 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

给定前序序列和中序序列唯一确定一棵二叉树

#include <stdio.h>#include <stdlib.h>#include <string.h>#define N 100typedef struct btnode{ char data; btnode *lchild; btnode *rchild; }btnode;btnode *create_tree(char pre_order[],char in_order[],int pre_l,int pre_r,int in_l,i
原创
发布博客 2020.11.11 ·
342 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

顺序存储数组构造二叉树

#include <stdio.h>#include <stdlib.h>#include <string.h>#define N 100/*一棵具有n个节点的完全二叉树以顺序方式存储在数组A[]中,设计一个算法构造二叉树的二叉链式存储结构构造函数,传入数组A,传入根节点bt,bt->data=i,bt->lchild->data=2*i+1,bt->rchild->data=2*i+2*/typedef struct btno
原创
发布博客 2020.11.11 ·
991 阅读 ·
2 点赞 ·
1 评论 ·
11 收藏

二叉树统计问题汇总

#include <stdio.h>#include <stdlib.h>#define N 100/*二叉树非递归*/ typedef struct btnode{ char data; btnode *lchild; btnode *rchild; }btnode;int i=0;int aa[]={55,10,7,-1,-1,22,-1,-1,66,-1,100,-1,-1};char bt[]={'a','b','c','#','#','d','g
原创
发布博客 2020.11.11 ·
111 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

c语言二叉树的遍历——简单算法

#include <stdio.h>#include <stdlib.h>#define N 100/*二叉树非递归*/ typedef struct btnode{ char data; btnode *lchild; btnode *rchild; }btnode;int i=0;int aa[]={55,10,7,-1,-1,22,-1,-1,66,-1,100,-1,-1};char a[]={'a','b','c','#','#','d','#'
原创
发布博客 2020.11.10 ·
364 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

c语言Dijkstra算法

#include <stdio.h>/Dijkstra算法:解决最短路径问题,从一个初始点v0出发,设置lowcost[]数组,记录初始点到每一个顶点的最短路径,设置path[]数组记录初始点到每个点最短路径所经过的每一个点,设置visit[]数组,记录已经选入lowcost数组的点设置为 1 ,下次经过不再选中。思想:选择初始点v,遍历每个点,若两个点之间存在路径,记录权值到lowcost数组,然后对每个点进行判断,每次挑选一个最小权值进入lowcost数组并更新最小边/#defin
原创
发布博客 2020.11.09 ·
686 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

c语言直接插入排序

/直接插入排序:对数组中未排好序的序列向排好序的序列进行插入,从排好序的序列最后一位向前找,直到找到比他小的元素插入到它后面用一个暂时变量代表目标元素,每一个比它大的都往后移动一位传入数组a[ ],大小 n/#include <stdio.h>void insert_sort(int a[],int n){ int i,j,temp; for(i=1;i<n;++i) { temp=a[i]; for(j=i-1;j>=0;--j) { if(te
原创
发布博客 2020.11.06 ·
93 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

c语言冒泡排序

/*冒泡排序:目标数字,与前一个数字就行比较,如果前一个较大,则交换一下从数组第一位向最后一位进行冒泡,每完成一次,最后一位减一 ,如果一次排序没有发生交换,则排序完成break传入数组a[ ],大小 n */#include <stdio.h>void pop_sort(int a[],int n){ int i,j,temp; int tag; for(i=n-1;i>=1;--i) { j=1;tag=0; while(j<=i) { if
原创
发布博客 2020.11.06 ·
98 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

c语言快速排序算法

/快速排序:每次选择一个基点,进行排序,基点左边都小于它,右边都大于它传入数组,左边界,右边界/#include <stdio.h>void quick_sort(int a[],int Left,int Right){ int L=Left,R=Right; int tag=a[L]; if(L>=R) return; else { while(L<R) { while(a[R]>=tag && L<R) R--;
原创
发布博客 2020.11.06 ·
137 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏
加载更多