首页 文章 精选 留言 我的

精选列表

搜索[DOM遍历],共8197篇文章
优秀的个人博客,低调大师

书评:《大数据处理之道》大数据热门技术遍历

大数据无疑是当今时代最前沿最炙手可的概念,所以对于这种新技术,只有不断掌握最新的思想,时刻学习新的技术。作为大数据研发人员,时刻保持学习新技术,方能立于技术。 这本书,系统的讲解了当前流行的大数据软件Hadoop, Spark, Storm, Dremel/Drill,MapReduce, HDFS, Hive, Hbase, Pig, ZooKeeper等等,深入浅出的讲解,每个软件的优缺,这种横向比较如何把“死”的数据,变成真正有效的“资源”,最后再变成活生生的“金子”,可是说是大数据工具软件的集大成作品。 对于这么一个讲软件讲概念的书籍,更为难得的是幽默大话的表述风格,读起来畅快容易理解,可以轻松掌握。重点从各个技术的起源、设计思想、构架方面阐述,帮助读者能从根源上悟出大数据处理的核心道理,可以说每个人都会在读完有感触颇深的感觉。 本书最难能可贵之处在于全面,从广度上,涵盖了目前几乎所有的大数据处理热门技术,实为大数据行业的入门人员和从业人员的一顿饕餮盛宴。书中全面介绍了目前大数据处理领域的热门技术的精髓和适应的场景,实用性很强,特别是通过目录发现了后面章节有专门设计日志分析这一当前热门领域的机器学习场景,着实更加期待了。

优秀的个人博客,低调大师

leetcode算法题解(Java版)-1-二叉树遍历

又开始刷算法题了,正好在学Java,顺便也练练Java。 题目描述 Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to right, then right to left for the next level and alternate between). For example:Given binary tree{3,9,20,#,#,15,7}, 3 / \ 9 20 / \ 15 7 return its zigzag level order traversal as: [ [3], [20,9], [15,7]] confused what"{1,#,2,3}"means? > read more on how binary tree is serialized on OJ. OJ's Binary Tree Serialization: The serialization of a binary tree follows a level order traversal, where '#' signifies a path terminator where no node exists below. Here's an example: 1 / \ 2 3 / 4 \ 5 The above binary tree is serialized as"{1,2,3,#,#,4,#,#,5}". 我的解答: /** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ import java.util.ArrayList; import java.util.LinkedList; import java.util.Collections; import java.util.Queue; public class Solution { public ArrayList<ArrayList<Integer>> zigzagLevelOrder(TreeNode root) { ArrayList<ArrayList<Integer>> ans=new ArrayList<>(); if(root==null){ return ans; } ArrayList<Integer> tem=new ArrayList<>(); TreeNode lastNode=root; TreeNode levelNode=root; Queue<TreeNode> q=new LinkedList<>(); q.add(root); int cnt=0; while(q.size()!=0){ TreeNode poll=q.poll(); tem.add((Integer)poll.val); if(poll.left!=null){ q.offer(poll.left); lastNode=poll.left; } if(poll.right!=null){ q.offer(poll.right); lastNode=poll.right; } if(levelNode==poll){ if(cnt%2!=0){ Collections.reverse(tem); } levelNode=lastNode; ans.add(new ArrayList<>(tem)); tem.clear(); cnt++; } } return ans; } } 遇到的坑&&小结: 把Collections当成了Collection。实际上,Collections是一个包装类,可以当成专门为Collection中的类服务的工具类,不能被实例化;而Collection是根接口 Java引用变量有两个类型:一个是编译时的类型,一个是运行时的类型。编译时由声明该变量时使用的类型决定,运行时由实际赋值给它的对象的类型决定,当编译时的类型和运行时的类型不一样时,就产生了所谓的多态 在多态中,引用类型时接口或父类,而正真的实现类型是实现接口的类的对象或继承父类的子类对象。比如:Queue<TreeNode> q=new LinkedList<>();其中,引用类型是Queue这个接口,实现类型(也就是运行时的类型)是LinkedList这个实现了Queue接口的类 多态性是对象多种表现形式的体现 `ArrayList> res = new ArrayList>();一般都不这么写(我一开始不造),一般都写成ArrayList> res = new ArrayList<>();`因为不写默认跟前面的走,这是泛型规定的

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册