zoukankan      html  css  js  c++  java
  • 第一周学习记录

    学习记录(4.22-4.29)

    数据结构

    • 学习二叉树的顺序存储操作和链式存储操作
      包括创建二叉树,先序中序后序排列输出。作业:查找元素并写出所在层数。
      代码:
    #include<stdlib.h>
    
    //树的定义(结点定义)
    typedef char DataType;
    typedef struct Node {
         DataType  data; 
         struct  Node  *lchild; 
         struct  Node  *rchild;                   
    } BiNode,*BiTree;
    
    //创建树的二叉链表(递归)
    void CreateBiTree(BiTree *bt)
    {
    	char ch;
    	ch = getchar();
        if(ch=='.') *bt=NULL;
        else 
    	{
    		*bt= (BiNode *)malloc(sizeof(BiNode)); 
    		(*bt)->data=ch;
             CreateBiTree(&((*bt)->lchild)); //生成左子树
             CreateBiTree(&((*bt)->rchild)); //生成右子树
    	}
    }
    
    //输出二叉树的元素(先序)
    void Print(BiTree bt)
    {
    	if(bt==NULL)	
    		return;
    	else
    	{
    		printf("%c ", bt->data);
    		Print(bt->lchild);
    		Print(bt->rchild);
    	}
    
    }
    
    int where=1;
    int reserch(char x,BiTree bt)
    {
    	if (bt==NULL)return 0;
    	if(bt->data==x)return where;
    	where++;
    	if(reserch(x,bt->lchild)==0)where--;
    	else return where;
    	where++;
    	if(reserch(x,bt->rchild)==0)where--;
    	else return where;
    	
    	return 0;
    }
    //主函数
    void main()
    {
    	BiTree T;
    	char r;
    	CreateBiTree(&T);
    	Print(T);
    	printf("
    ");
    	getchar();
    	scanf("%c",&r);
    	printf("%d",reserch(r,T));
    }
    
    • 学习markdown写作基础。用于编写博客。
  • 相关阅读:
    bzoj1059: [ZJOI2007]矩阵游戏
    NEW
    bzoj2438: [中山市选2011]杀人游戏
    bzoj4554: [Tjoi2016&Heoi2016]游戏 二分图匹配
    【高精度】模板 (C++)
    【BZOJ4025】二分图 LCT
    读入/输出模板
    一些 Markdown 语法
    题解 P3732 [HAOI2017]供给侧改革
    题解 CF1598A Computer Game
  • 原文地址:https://www.cnblogs.com/LKL1235/p/12803374.html
Copyright © 2011-2022 走看看