
数据结构和算法
文章平均质量分 60
zhangzeyuaaa
这个作者很懒,什么都没留下…
展开
-
Java位运算在程序设计中的使用:位掩码(BitMask)
Java位运算在程序设计中的使用:位掩码(BitMask)转载 2022-06-01 13:47:09 · 769 阅读 · 0 评论 -
Java递归应用:输出树形菜单
树节点类:package cn.com.tree;public class Node { private Integer id; private Integer parentId; private String name; private String link; public Integer getId() { return id; } public void setI原创 2014-04-27 09:40:22 · 40290 阅读 · 2 评论 -
Java递归求笛卡尔积(从N个数组中任取一个元素的所有组合)
最近遇到一个需要计算笛卡尔积的需求,由于乘积结果较小,因此可以使用递归方法,这样也方便理解一些。笛卡尔积实际就是在一个类似矩阵的结果集中,从每行逐个取出元素进行组合的结果,直到最后一行就可以跳出循环。搞清楚大致实现原理后,就可以敲代码啦~我的实现方法没有考虑效率,只是用于抛砖引玉:class DescartesTest { @Test void descartes() { List<String> list1 = new ArrayList<&转载 2022-01-13 13:48:35 · 949 阅读 · 0 评论 -
生成Excel树形表头
源数据格式:String[] targetNames = { "指标名称", "单位", "xx_yy1", "xx_yy2_zz1", "xx_yy2_zz2", "2017年5月_主营业务收入_累计", "2017年5月_主营业务收入_同比", "2017年5月_主营业务收入_本月", "2017年5月_主营原创 2017-07-09 22:30:41 · 1120 阅读 · 2 评论 -
两种树形菜单结构互相转换
两种树形菜单结构SingleTreeNode:package com.zzj.tree;public class SingleTreeNode { private int id; private int pId; private String name; public SingleTreeNode() {} public SingleTreeNode(int id, in原创 2017-01-08 14:14:35 · 2026 阅读 · 0 评论 -
Java TreeMap/TreeSet
首先要说明的是,TreeMap仍然是Map,而不是Tree。同样的,TreeSet仍然是Set,而不是Tree。也就是说TreeMap和TreeSet不能当成树来使用,只是它们的底层是使用红黑树来实现的。TreeMap实现了java.util.SortedMap接口,是一个已经排好序的Map。有两种方式使用TreeMap。1.元素自然排序,即放入容器中的元素实现java.lang.Co原创 2015-01-05 14:57:45 · 1738 阅读 · 0 评论 -
Java HashMap与散列
HashMap内部存储和查找时采用的散列法。先看HashMap的默认构造函数:public HashMap() { this.loadFactor = DEFAULT_LOAD_FACTOR;//默认 threshold = (int)(DEFAULT_INITIAL_CAPACITY * DEFAULT_LOAD_FACTOR); tabl原创 2014-01-26 13:38:25 · 1389 阅读 · 0 评论 -
Java只读集合与同步集合
直接上代码:package com.xs.collection;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class ReadOnly { /** * @param args */ public static void main(Str原创 2015-02-09 11:42:28 · 4470 阅读 · 0 评论 -
遍历Map的三种方法
三种方法是:1.遍历key;2.遍历entry;3.遍历value(只能取出value)。public static void main(String[] args) { Map map = new HashMap(); map.put("1", "values1"); map.put("2", "values2"); map.put("3", "values3"); //原创 2015-01-02 11:13:58 · 2372 阅读 · 0 评论 -
散列
散列的英文单词是Hash,Hash也译作哈希,是音译,本人以前误以为是人名。定义通过某种特定的函数/算法(称为散列函数/算法)将要检索的项(Key)与用来检索的索引(index/Hash Value)(称为散列,或者散列值)关联起来,生成一种便于搜索的数据结构(称为散列表)。散列算法也被用来加密存在数据库中的密码(password)字串,由于散列算法所计算出来的散列值(Hash V原创 2014-01-26 11:27:14 · 964 阅读 · 0 评论 -
Java数据结构总论
数据结构分类:一:集合也就是离散数学上的集合,具有三个特性:1.确定性给定任意元素e,能确定它是否属于集合S。2.互异性集合中没有重复元素。3.无序性集合A={1,2,3}和集合B={3,2,1}是相等的。集合是最基础的数据结构,由集合可以衍生两种关系:集合内部元素之间的关系和集合与集合之间的关系。对应的Java数据结构:Set。二:序列(线性表)序原创 2014-01-09 14:20:49 · 1093 阅读 · 0 评论 -
Java List 分组
如一个List中存放了ProductDoing对象,productDoing对象有rawTypeId 现在要求将rawTypeId分组处理。 先用Map找出list中所有的分组: //原料类型组Map groups = new HashMap();for(ProductDoingVo pd : products){ groups.put(pd.getRawT原创 2013-01-23 12:28:32 · 5423 阅读 · 0 评论