zoukankan      html  css  js  c++  java
  • DS博客作业07--查找

    DS博客作业07--查找

    1.思维导图及学习体会

    1.1思维导图

    1.2.谈谈你对查找运算的认识及学习体会

    本周进行了查找的学习,查找的知识相对于图和树来说就更加的简单和容易理解。在查找这一章,主要的查找方法有哈希表还有很多高效率的排序方法,比如堆排序,归并排序,还有快速排序。在希尔表中,根据关键码值而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。其中产生的希尔冲突可以用线性探查法和希尔链法来进行解决。在排序中,我们所学的高效的排序算法的时间复杂都是n(nlog2n),但是快速排序依旧是其中最佳,虽然他们都是高效的算法,但是这些算法都不稳定。
    

    2.PTA实验作业

    2.1.题目1:6-1 二叉搜索树的操作集 (30 分)

    2.1.1设计思路(伪代码)

    BinTree Delete(BinTree BST,ElementType X)
    {
        定义tmp树结点
        if树空,直接输出"Not Found“
        else 找到要删除的X对应结点位置
        if X>当前结点 递归调用 Delete(BST->Right,X)
        if X<当前结点 递归调用 Delete(BST->Left,X)
        else if X=当前结点   判断当前结点左右孩子是否为空       
                if 左右孩子不空  
        调用函数FindMin(BST->Right)
        tmp->Data=BST->Data 保存数据
        BST树的右孩子置为结点 保证二叉搜索树的有序性
               else if
                       if左孩子为空, 右孩子置为结点
                       if右孩子为空,右孩子置为结点
        return BST
    }
    

    2.1.2代码截图



    2.1.3本题PTA提交列表说明

    2.2.题目2:6-3 二叉搜索树中的最近公共祖先 (25 分)

    2.2.1设计思路(伪代码)

    int LCA(Tree T,int u,int v)
    {
        if T 为空,返回 ERROR
        else if   (Find(T,u)且Find(T,v))   结点在树中
        if T->key>u且T->key<v且T->key>v且T->key<u   返回 结点T-key  
                end if
        if T->key=u或T->key=v  返回 结点T->key  
                end if
        if T->key>u或T->key>v 递归函数LCA(T->Left,u,v)   
                end if
        if T->key<u且T->key<v 递归函数LCA(T->Right,u,v)   
                end if
                     end if
        返回ERROR
    }
    

    2.2.2代码截图

    2.2.3本题PTA提交列表说明

    2.3.题目3:7-1 QQ帐户的申请与登陆 (25 分)

    2.3.1设计思路(伪代码)

    调用Map函数,若输入的命令为申请,调用T.find函数检验id,若T.find函数等于T.end,说明STL容器中没有此账号,将密码附给账号,申请成功,否则说明账号已存在;若输入命令为老账户登录调用T.find函数检验id,若T.find函数等于T.end,说明账号输入错误,若T.find函数不等于T.end,说明账号存在,判断密码是否相等,若不等,则密码输入错误,若相等,则登录成功
    

    2.3.2代码截图



    2.3.3本题PTA提交列表说明

    3.阅读代码

    3.1 题目

    3.2 解题思路

    3.3 代码截图

    3.4 学习体会

  • 相关阅读:
    jQuery.validationEngine前端验证
    Ztree异步树加载
    asp.net后台编写 loading效果
    [ASP.NET] 使用Loading遮罩防止使用者重複點擊
    Easy UI 遮罩(MASK)
    jQueryEasyUI Messager基本使用
    jquery easyui datagrid使用参考
    asp.net mvc 2.o 中使用JQuery.uploadify
    ie9,10 uploadify cleanUp bug
    SQL Server 2005 镜像构建手册
  • 原文地址:https://www.cnblogs.com/cfjblog/p/11035144.html
Copyright © 2011-2022 走看看