数据结构与算法 - 链表 - 反转 题目反转一个单链表。输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL解题思路1、定义一个prev节点、一个cur当前节点、一个nextTmp节点2、循环链表,将cur的next指向prev代码public ListNode reverseList(ListNode head) { ListNode prev = null; ListNode cur = head;
数据结构与算法 - 字符串 - 反转 题目编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。解题思路1、定义一个tmp变量,用来中转交换的变量2、第一个和最后一个交换,第二个和倒数第二个交换,直到长度小于数组长度除以二代码public void reverseString(char[] s) { for (int i = 0; i < s.length / 2; i++) {
数据结构与算法 - 数字 - 好数对的数目 题目给你一个整数数组 nums 。如果一组数字 (i,j) 满足 nums[i] == nums[j] 且 i < j ,就可以认为这是一组 好数对 。返回好数对的数目。nums = [1,2,3,1,1,3],有 4 组好数对,分别是 (0,3), (0,4), (3,4), (2,5)解题思路构建map,key为nums[i],值为次数使用组合算法,Cn2累加,即rst += n*(n-1)/2代码public static int numIdenticalPairs(int
大数据 - 指标 - 流量 业务粒度 - 活跃指标口径定义DAU日活跃用户数量WAU周活跃用户数量MAU月活跃用户数量累计用户数历史累计用户数量NU新增用户数量最近1天pv最近1天pv最近7天pv最近7天累加pv最近30天pv最近30天累加pv业务粒度 - 留存指标口径定义第一日留存率统计日uv/基准日uv。基准日定义为T,统计日定义为T+1第二日留存率统计日uv/基准日uv。基准日定义为T,统计日定义为T+2第
数据结构与算法 - 数字 - 两个二进制数求和 题目给定两个二进制字符串,返回它们的和(用二进制表示)。解题思路1、从后往前逐个取出字符2、定义一个进位的变量3、每一位的和等于(字符串1+字符串2+进位变量)%24、进位变量等于(字符串1+字符串2+进位变量)/25、逐位求和后的字符串反转代码public String addBinary(String a, String b) { StringBuffer rst = new StringBuffer(); int maxLen = a.length() >= b
SQL - count(*) count(1) count(主键) count(列) 数据库mysql的InnoDB引擎聚合函数count判断参数是否不为null,不为null累计值就加 1,否则不加。最后返回累计值。比较1、count(*), 不取值,按行累加。2、count(1) ,不取值。server 层对于返回的每一行,放一个数字“1”进去,按行累加2、count(主键 id) ,遍历整张表,把每一行的 id 值都取出来,返回给 server 层。server 层拿到 id 后,判断不为null的,按行累加。4、count(字段),如果定义为 not null ,逐行
数据结构与算法 - 数字 - 回文数 题目判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。正例:121 | 1 | 12321反例:-121 != 121- | 100 != 001 1234 != 4321解题思路1、先排除负数、能被10整除的数据2、反转整数的一半,和整数比较是否相等3、21反转,可以用 21 % 10 * 10 + 21 / 10代码 public static boolean isPalindrome(int x) { // 负数、0、被10整除的
linux 给指定用户分配文件夹权限 linux 给指定用户分配文件夹权限更改目录所有者命令:chown -R 用户名称 目录名称更改目录权限命令:chmod -R 777 目录名称查看文件夹的权限ls -la 目录
mac brew install,mac的yum 安装步骤 /usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)” 安装过程可能出现如下错误curl: (7) Failed to connect to raw.githubusercontent.com port 443: Operati...
MVC架构Maven项目(四)SpringMVC集成 SpringMVC配置文件- 默认在classpath目录下找[servlet-name]-servlet.xml,如本例中是dispatcher-servlet.xml- 可以添加init-param来指定目录及文件名称,格式为classpath:目录名/文件名
MVC架构Maven项目(三)包结构规划 包结构说明: com+公司名称+部门+项目+层+模块 com.anonymity.mobile.blog.common………………………………….工具包 com.anonymity.mobile.blog.controller.demo com.anonymity.mobile.blog.controller.member…………………控制层 com.anonymity.mobile.b
MVC架构Maven项目(二)工程创建 点击File —> New —> other,弹出如下界面。 在搜索框中输入maven,选择Maven Project,下一步。 按下图勾选,下一步。 Working Set:可以理解为eclipse的文件夹,同一个类型或者同一个模块的项目放到里面方便管理。项目类型选择maven-archetype-app,下一步。 这一步很重要,参考如下说明填写,然后finish。 Group Id:机构名