leafnode

C++变量命名规则

半世苍凉 提交于 2020-08-14 03:46:43
转自:http://www.cnblogs.com/finallyliuyu/archive/2010/09/25/1834301.html 浅谈C++变量命名规则 不知道别的公司如何,反正我现在的公司对变量命名并没有一定的规范,唯一要求就是能简单易懂,但是,我想,这个多个程序员,大概每个人都有自己习惯的一套 命名规则吧,不过,要是并不通用的话,大概看别人的程序会很头疼吧,SO 为了别人看偶的程序不至于太头疼,偶决定找个通俗的命名法来参考下,于是,搜到了匈牙利命名法。。。 匈牙利命名法的来历和介绍分类:C Plus Plus 匈牙利命名法是一种编程时的命名规范。基本原则是:变量名=属性+类型+对象描述,其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部 分。命名要基于容易记忆容易理解的原则。保证名字的连贯性是非常重要的。 举例来说,表单的名称为form,那么在匈牙利命名法中可以简写为frm,则当表单变量名称为Switchboard时,变量全称应该为 frmSwitchboard。这样可以很容易从变量名看出Switchboard是一个表单,同样,如果此变量类型为标签,那么就应命名成 lblSwitchboard。可以看出,匈牙利命名法非常便于记忆,而且使变量名非常清晰易懂,这样,增强了代码的可读性,方便各程序员之间相互交流代 码。

Java:Top K问题的解法

随声附和 提交于 2020-07-28 08:49:17
import java.util.Arrays; import java.util.PriorityQueue; import java.util.Queue; public class LeafNode { // 堆方法(优先队列) // 1.堆的性质是每次可以找出最大或最小的元素 // 快排变形 public static void main(String[] args) { int[] arr = new int[] { 1, 2, 34, 4, 5, 6 }; //int[] nums = getLeastNumbers(arr, 3); int[] nums=getLeastNumbersTwo(arr,3); System.out.println(Arrays.toString(nums)); } public static int[] getLeastNumbers(int[] arr, int k) { if (k == 0) return new int[0]; // 使用一个最大堆(大顶堆) Queue<Integer> heap = new PriorityQueue<>(k, (i1, i2) -> Integer.compare(i2, i1)); for (int e : arr) { // 当前数字小于堆顶元素才会入堆 if (heap.isEmpty

kudu简介2

天大地大妈咪最大 提交于 2020-04-29 17:05:11
参考文章: kudu介绍 文章内容来源于官网文档: http://kudu.apache.org/docs/index.html 一、kudu介绍 Kudu是Cloudera开源的新型列式存储系统,是Apache Hadoop生态圈的成员之一(incubating),专门为了对快速变化的数据进行快速的分析,填补了以往Hadoop存储层的空缺。 1 功能上的空白 Hadoop生态系统有很多组件,每一个组件有不同的功能。在现实场景中,用户往往需要同时部署很多Hadoop工具来解决同一个问题,这种架构称为混合架构 (hybrid architecture)。比如,用户需要利用Hbase的快速插入、快读random access的特性来导入数据,HBase也允许用户对数据进行修改,HBase对于大量小规模查询也非常迅速。同时,用户使用HDFS/Parquet + Impala/Hive来对超大的数据集进行查询分析,对于这类场景, Parquet这种列式存储文件格式具有极大的优势。 很多公司都成功地部署了HDFS/Parquet + HBase混合架构,然而这种架构较为复杂,而且在维护上也十分困难。首先,用户用Flume或Kafka等数据Ingest工具将数据导入HBase,用户可能在HBase上对数据做一些修改。然后每隔一段时间(每天或每周)将数据从Hbase中导入到Parquet文件

关于EasyPoi导出Excel

拥有回忆 提交于 2020-04-27 20:31:37
如果你觉得Easypoi不好用,喜欢用传统的poi,可以参考我的这篇博客: Springmvc导出Excel(maven) 当然了,万变不离其宗。Easypoi的底层原理还是poi。正如MyBatis Plus的原理还是MyBatis那套。只不过它们的共同点是封装起来。 关于Easypoi记得初次接触的时候,给我的感觉是看起来很简单很容易让人理解,而且文档也比较丰富,也是jeecg的开源项目下的子项目。 记得当初为了提高代码开发效率,去码云和github上游荡游荡,突然发现了一个叫jeecg的玩意,于是研究了下,这个研究不是特别深,只是将其项目跑起来,看看它有哪些组件,顺便看看源码,和玩玩它强大的插件式开发和easypoi。 jeecg中的easypoi的项目地址为:https://gitee.com/jeecg/jeasypoi jeecg中的easypoi的官方详细文档为:http://easypoi.mydoc.io/ 大家要牢记一个经济方面的格言:物质基础决定上层建筑。 对计算机专业的同志们而言,良好的计算机基础,是以后编程世界的驰骋飞扬的基石。 所以在校的同志们,一定要好好学习天天向上。 闲话就不多说了,下面进入正题。 一、导入依赖 <!-- easypoi导入导出excel --> <dependency> <groupId>cn.afterturn</groupId>