博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 键值对的树实现
阅读量:6033 次
发布时间:2019-06-20

本文共 996 字,大约阅读时间需要 3 分钟。

 

#coding:utf-8__author__ = 'similarface'class KeyedBinaryTree:    def __init__(self):self.tree=EmptyNode()    def __repr__(self):return repr(self.tree)    def lookup(self,key):return self.tree.lookup(key)    def insert(self,key,val):self.tree=self.tree.insert(key,val)class EmptyNode:    def __repr__(self):        return '*'    def lookup(self,key):        return None    def insert(self,key,val):        return BinaryNode(self,key,val,self)class BinaryNode:    def __init__(self,left,key,val,right):        self.key,self.val=key,val        self.left,self.right=left,right    def lookup(self,key):        if self.key==key:            return self.val        elif self.key>key:            return self.left.lookup(key)        else:            return self.right.lookup(key)    def insert(self,key,val):        if self.key==key:            self.val=val        elif self.key>key:            self.left=self.left.insert(key,val)        elif self.key

 

转载于:https://www.cnblogs.com/similarface/p/5128795.html

你可能感兴趣的文章
Windows Server 2012 R2 DirectAccess功能测试(2)App1服务器安装及配置
查看>>
基于清单的启动器的实现
查看>>
外网用户通过citrix打印慢的解决方法
查看>>
STL容器的使用
查看>>
关于std::map
查看>>
JXL导出Excel文件兼容性问题
查看>>
VBoot1.0发布,Vue & SpringBoot 综合开发入门
查看>>
centos7 安装wps 后 演示无法启动
查看>>
git简单命令
查看>>
LAMP编译部署
查看>>
XenDesktop7.6安装部署入门教程
查看>>
HashMap的工作原理及HashMap和Hashtable的区别
查看>>
GregorianCalendar日历程序
查看>>
Sublime 中运行 Shell 、Python、Lua、Groovy...等各种脚本
查看>>
【Java集合源码剖析】ArrayList源码剖析
查看>>
linux基础概念和个人笔记总结(6)
查看>>
一图胜千言 -- SQL Server 基准测试
查看>>
微小说精选
查看>>
我的友情链接
查看>>
主板典型故障解决方法
查看>>