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

郑州网站开发公司哪家好google中文搜索引擎入口

郑州网站开发公司哪家好,google中文搜索引擎入口,有创意营销型网站建设,怎么cms做网站Map和Set接口 1.Set集合#xff1a;独特性与无序性 Set是Java集合框架中的一种#xff0c;它代表着一组无序且独特的元素。这意味着Set中的元素不会重复#xff0c;且没有特定的顺序。Set接口有多个实现类#xff0c;如HashSet、LinkedHashSet和TreeSet。 2.Map集合独特性与无序性 Set是Java集合框架中的一种它代表着一组无序且独特的元素。这意味着Set中的元素不会重复且没有特定的顺序。Set接口有多个实现类如HashSet、LinkedHashSet和TreeSet。 2.Map集合键值对的存储 Map是Java集合框架中的另一种它存储了一组键值对Key-Value Pair。每个键映射到一个值使得通过键可以高效地检索对应的值。Map接口有多个实现类如HashMapLinkedHashMap和TreeMap。 搜索树 1.概念 二叉搜索树又称二叉排序树它或者是一棵空树或者是具有以下性质的二叉树 若它的左子树不为空则左子树上所有节点的值都小于根节点的值 若它的右子树不为空则右子树上所有节点的值都大于根节点的值 它的左右子树也分别为二叉搜索树 2.创建一个二叉搜索树 查找 插入 public boolean insert2(int val){TreeNode nodenew TreeNode(val);if(rootnull){rootnode;} else {TreeNode curroot;while(cur!null){if(cur.valval){if(cur.rightnull){cur.rightnode;break;}else if(cur.right.valval){node.rightcur.right;cur.rightnode;break;}else{curcur.right;}}else if(cur.valval){if(cur.leftnull){cur.leftnode;break;}else if(cur.left.valval){node.leftcur.left;cur.leftnode;break;}else{curcur.right;}}else{return false;}}}return true;} 这段代码有问题对于一个已经有俩个叉的节点我们不能去更新它的左右孩子所以对于二叉搜索树的插入操作必须是在空节点上进行插入代码如下 删除 public boolean remove(int val){TreeNode curroot;TreeNode parentnull;while(cur!null){if(cur.valval){break;}else if(cur.valval){parentcur;curcur.right;}else{parentcur;curcur.left;}}if(curnull){return false;} else if (cur.leftnull) {if(curroot){rootcur.right;} else if (curparent.left) {parent.leftcur.right;}else {parent.right cur.right;}}else if(cur.rightnull){if(curroot){rootcur.left;} else if (curparent.left) {parent.leftcur.left;}else {parent.right cur.left;}}else{TreeNode targetparentcur;TreeNode targetcur.right;while(target.left!null){targetparenttarget;targettarget.left;}if(targetparentcur){cur.valtarget.val;targetparent.righttarget.right;}cur.valtarget.val;targetparent.lefttarget.right;}return true;} 第一个while是找到待删除的节点 如果待删节点左边为空如果待删节点是根节点则让待删节点的右边变成根如果不是根节点而是上一个结点的右面……是上一个结点的左面…… 如果待删节点右面为空…… 如果待删节点左右都不为空我们的做法是从待删结点的左边找到最大值即左边子树的最右面的节点或者从待删结点的右面找到最小值即右面子树的最左边节点。找到之后还要分类分类如代码所示 3.和Java类集的关系 TreeMap 和 TreeSet 即 java 中利用搜索树实现的 Map 和 Set 实际上用的是红黑树而红黑树是一棵近似平衡的 二叉搜索树即在二叉搜索树的基础之上 颜色以及红黑树性质验证关于红黑树的内容后序再进行讲解。 搜索 1.概念 Map 和 set 是一种专门用来进行搜索的容器或者数据结构其搜索的效率与其具体的实例化子类有关 。 2.模型 一般把搜索的数据称为关键字 Key 和关键字对应的称为值 Value 将其称之为 Key-value 的键值对所以 模型会有两种 纯key模型比如快速查找某个电话在不在通讯录里面。 key-value模型比如每个梁山好汉有自己的名字同时也有自己的绰号比如统计每个单词出现的次数 其中Set是纯key模型Map是key-value模型 Map的使用 1.实例化子类 这是一个泛型的接口要传入key和value的类型 假设要统计单词的次数则对于key是String类型value是Integer类型所以如下 如果实例化TreeMap子类则其搜索的时间复杂度为O(logN)如果是HashMap则是O(1)。所以其搜索的效率与其具体的实例化子类有关。 注意使用时要导入对应的包 其次key是唯一的不可以重复 2.Map中的常用方法 put方法返回值是放入的该单词的次数 get方法参数是要得到的单词返回值是单词的次数 getOrDefault方法如果包含该单词则返回对应的value反之返回我们自己传入的defaultValue boolean containsKey(Object key);判断是否包含key boolean containsValue(Object value);判断是否包含value V remove(Object key);删除key即删除某个单词返回对应的value即次数 void putAll(Map? extends K, ? extends V m);将m中的key和value全部放到map1中其中m的key的类型是map1的key的类型的子类m的value类型是map1的value的类型的子类如下 SetK keySet();返回所有key的不重复集合如下 CollectionV values();这个方法是返回所有value的集合 返回值是CollectionV那我进行向下转型用ArrayList接收可以吗试一试 运行之后发现报错了为什么呢这不就是向下转型吗实际上这是非法的向下转型看下面的例子Student是Person的子类 这样的代码在运行时没有报错 这个代码报错了。其实是没真正理解向下转型以及父类和子类的关系 在Java中父类引用可以指向子类实例反之则不可以 第一段代码中p是父类引用它是指向了子类实例然后将一个子类实例p给到了子类的引用自然是可以的而第二段代码中p是父类引用并且指向父类实例然后将哟个父类实例p给到一个子类引用就是不可以的 这也就是为什么不可以用ArrayList来接收Collection类的返回值 那么如何存储到ArrayList中用Arraylist的一个构造方法 代码如下 或者将它存放到HashSet中 SetMap.EntryK, V entrySet();要想了解这个方法首先要看一下Map.Entry:Entry是Map中的一个内部接口包含了key和value所以SetMap.EntryK, V entrySet();这个方法可以将key和value看成一个都放到set中如下 或者如下打印 3.注意 1.Map中存放的键值对的key是唯一的value是可以重复的就比如单词出现的次数的统计 2.在TreeMap中插入键值对时key不能为空value可以为空而HashMap中的key和value都可以为空 3.Map中的key可全部分离出来存到Set中进行访问 Set的使用 Set使用和Map类似请详细看源码 只强调几个 IteratorE iterator();用法如下 boolean addAll(Collection? extends E c); boolean containsAll(Collection? c); 注意这俩个方法的参数是实现了Collection接口的类所以单纯的整型数组不可以作为参数传递要用到Arrays中的aslist方法 boolean retainAll(Collection? c);这个方法只保留这个集合中包含在指定集合中的元素可选操作。换句话说从这个集合中删除所有不包含在指定集合中的元素 注意 1.Set时继承自Collection的接口类 2.TreeSet的底层是一个TreeMap 不管实例化一个什么样的TreeSetvalue都是一个Object对象 3.Set中的key是唯一的 4.TreeSet的key不能是null但HashSet可以 5.添加的对象必须是可以进行比较的
http://www.pierceye.com/news/675254/

相关文章:

  • 12306网站多少钱做的怎么研发软件app
  • 手机端建站井冈山保育院网站建设
  • 服装设计网站怎么做wordpress网站商务通
  • 重庆建设医院官方网站医疗网站源码
  • 大学生想做网站天元建设集团有限公司商业承兑汇票拒付最新消息
  • 怎么区分营销型网站文章类型的网站模版
  • 网站充值接口怎么做国家企业官网查询系统
  • 厦门网站建设工程网站备案幕布大小
  • 做家教去什么网站滕州做网站哪家好
  • 深圳市涂能装饰设计公司网站网站建设活动策划方案
  • 建设三合一网站找设计公司上哪个网站
  • 代理ip做网站流量饭店网站模板
  • 保险网站查询软件开发工程师和程序员的区别
  • 江都区城乡建设局网站马局下载app下载安卓免费
  • 网站做后台kuler 网站
  • 北京建网站公司飞沐扬中信息网
  • 商河网站建设公司南县网站建设推荐
  • 湛江企业网站建站模板网站开发 平台
  • c做的网站app开发制作专业吗
  • 杭州做网站公司做网站的文章
  • 那里有制作网站公司做网站需要了解的内容
  • 网站防护怎么做企业网站建设的ppt
  • 凡科网的网站建设好用吗wordpress在线朗读
  • 闽侯县建设局网站营销网站seo推广费用
  • 长乐区住房和城乡建设局网站测网站打开的速度的网址
  • 手机网站产品展示模板wordpress评论改成微博
  • 后盾网原创实战网站建设教程做网站和编程序
  • 东莞整站优化推广公司找火速如何做网站连接
  • 做ppt的模板的网站想学服装设计怎么入门
  • 短视频网站如何做推广网站申请域名