当前位置: 首页 > news >正文

百度工具网站改版搜索引擎下载

百度工具网站改版,搜索引擎下载,Wordpress+仿站+工具,中国十大杰出建筑师目录 树结构及其算法-二叉查找树 C代码 树结构及其算法-二叉查找树 二叉树在建立的过程中是根据“左子树 < 树根 < 右子树”的原则建立的&#xff0c;因此只需从树根出发比较键值即可&#xff0c;如果比树根大就往右&#xff0c;否则往左而下&#xff0c;直到相等就找…

目录

树结构及其算法-二叉查找树

C++代码


树结构及其算法-二叉查找树

二叉树在建立的过程中是根据“左子树 < 树根 < 右子树”的原则建立的,因此只需从树根出发比较键值即可,如果比树根大就往右,否则往左而下,直到相等就找到了要查找的值,如果比较到nullptr,无法再前进,就代表查找不到此值。

    TreeNode* Find(TreeNode* tree, int value) {while (true) {if (tree == nullptr)return nullptr;if (tree->data == value)return tree;else if (tree->data > value)tree = tree->leftNode;elsetree = tree->rightNode;}}

C++代码

#include<iostream>
using namespace std;struct TreeNode {int data;TreeNode* leftNode;TreeNode* rightNode;TreeNode(int tempData, TreeNode* tempLeftNode = nullptr, TreeNode* tempRightNode = nullptr) {this->data = tempData;this->leftNode = tempLeftNode;this->rightNode = tempRightNode;}
};class Tree {
private:TreeNode* treeNode;
public:Tree() {treeNode = nullptr;}TreeNode* GetTreeNode() {return this->treeNode;}void AddNodeToTree(int* tempData, int tempSize) {for (int i = 0; i < tempSize; i++) {TreeNode* currentNode;TreeNode* newNode;int flag = 0;newNode = new TreeNode(tempData[i]);if (treeNode == nullptr)treeNode = newNode;else {currentNode = treeNode;while (!flag) {if (tempData[i] < currentNode->data) {if (currentNode->leftNode == nullptr) {currentNode->leftNode = newNode;flag = 1;}elsecurrentNode = currentNode->leftNode;}else {if (currentNode->rightNode == nullptr) {currentNode->rightNode = newNode;flag = 1;}elsecurrentNode = currentNode->rightNode;}}}}}void Inorder(TreeNode* tempTree) {if (tempTree != nullptr) {Inorder(tempTree->leftNode);cout << tempTree->data << " ";Inorder(tempTree->rightNode);}}TreeNode* Find(TreeNode* tree, int value) {while (true) {if (tree == nullptr)return nullptr;if (tree->data == value)return tree;else if (tree->data > value)tree = tree->leftNode;elsetree = tree->rightNode;}}
};int main() {int data[]{ 7,4,1,5,16,8,11,12,15,9,2 };cout << "原始数据:" << endl;for (int i = 0; i < 11; i++)cout << data[i] << " ";cout << endl;Tree* tree = new Tree;tree->AddNodeToTree(data, 11);cout << "中序遍历:" << endl;tree->Inorder(tree->GetTreeNode());cout << endl;cout << "请输入要查找的值:";int value;cin >> value;if ((tree->Find(tree->GetTreeNode(), value)) != nullptr)cout << "您要找的值[" << tree->Find(tree->GetTreeNode(), value)->data << "]找到了" << endl;elsecout << "您要找的值没有找到" << endl;return 0;
}

输出结果

http://www.hrbkazy.com/news/6661.html

相关文章:

  • 怎么建设自己产品网站郑州seo线下培训
  • 如何做配音网站营销方案100例
  • 徐州网站开发多少钱百度爱采购竞价
  • wordpress的搜索功能网站内容优化方法
  • 深圳华强北做网站杭州seo网站哪家好
  • 做网站哪家便宜正安县网站seo优化排名
  • 网站建设具体流程网络推广需要什么
  • php7 mysql wordpress360手机优化大师下载
  • 做网站建设多少钱怎么看百度指数
  • 网站2级页面怎么做win10优化大师有用吗
  • 北京做网站维护整合营销传播案例分析
  • 在线建设网站制作百度广告代理商加盟
  • 广告设计毕业设计贴吧aso优化贴吧
  • 深圳.网站建设百度浏览器网址链接
  • 定制网站开发成本估算表google官方入口
  • 淮安哪有专业做网站的公司优秀网页设计
  • 北京企业官网网站建设报价如何写软文
  • 普陀网站建设网址链接生成器
  • 网站建设 销售seo计费系统源码
  • 关于做网站的英语对话优化关键词方法
  • 网站后面的官网是如何做的媒体资源
  • 怎么制作网站在线人数seo项目分析
  • 建站工具模板游戏推广文案
  • 免费自己设计装修的app南宁seo关键词排名
  • 成都网页设计公司推荐官网排名优化
  • php网页设计培训北京网站seo技术厂家
  • 福田网站设计免费b站推广
  • 群晖中使用wordpress新乡百度关键词优化外包
  • 做哪个网站的直播好专业全网优化
  • php网站制作商品结算怎么做seo搜索引擎优化业务