- 博客(13)
- 问答 (1)
- 收藏
- 关注
原创 Go 学习笔记(3)流程控制
Go 学习笔记(3)流程控制1. 通用流程控制if/else 条件语句if/else 语句的基本格式为:if cond1 { statement1} else if cond2 { statement2} else { statement3}在 Go 中,if/else 语句中条件不需要加小括号,而后面的执行语句需要加大括号。if/else 后的条件可以有两种形式:if cond {}if define; cond {}即在条件中可以可以执行其他语句或定义
2021-10-29 00:18:47
141
原创 Go 学习笔记(2)包与模块
Go 学习笔记(2)包与模块前面的代码均通过 package main 指定了包名为 main。在 Go 中,若一个程序是 main 包的一部分,则会生成二进制的可运行文件,并调用其中的 main 函数。对于非 main 包,则会生成 .a 文件,供其他包调用。创建包若存在以下的目录结构:$ tree myMathmyMath└── myMath.gomyMath.go 为:package myMathfunc Add(a, b int) int { res := a + b
2021-10-26 19:00:11
367
原创 Go 学习笔记(1)变量及函数
Go 学习笔记(1)变量及函数1. 变量声明变量声明变量的基本格式为:var <name1>, <name2>, <name3> <type>如:// 声明单个变量var a stringvar x int// 同时声明多个相同类型变量var c, d string也可以通过同一个 var 关键词声明多个变量:var ( a, b string c int)声明变量并初始化若声明变量时同时初始化,则仍可用以上
2021-10-25 23:58:20
186
原创 为 Go添加代理
为 Go 添加代理学习 Go 语言时,引用 rsc.io/quote 模块,但是下载该包时提示:$ go mod tidygo: finding module for package rsc.io/quotehello/hello imports rsc.io/quote: module rsc.io/quote: Get "https://proxy.golang.org/rsc.io/quote/@v/list": dial tcp 172.217.27.145:443: con
2021-10-23 13:41:22
480
原创 apk 反编译及重新打包签名
apk 反编译及重新打包签名1. 需要的工具apktool,apk 编译及反编译工具keytool,用于管理密钥和正数的工具jarsigner,签名工具apksigner,签名工具2. apk 反编译首先需要对 apk 进行反编译,假设 apk 名为 name.apk:apktool d [name.apk]编译后会生成一个与apk名称相同的文件夹 name,包括以下文件:反编译后可以对代码进行修改,主要是针对 smali 文件夹的修改,其中为反编译后的 smali 代码。本文主
2021-10-22 22:32:25
2760
1
原创 算法(4)统计出现次数为1的数
统计出现次数为1的数组1、在一个数组中除了一个数只出现 1 次外,其余均出现 2 次,找到出现次数为 1 的数。136. 只出现一次的数字这道题比较简单,只需要利用亦或运算特性即可,即对于两个二进制位 a,b 有 a==b, a^b=0; a!=b, a^b=1,因此若两个数相同,则其亦或运算结果为 0。Java 代码:class Solution { public int singleNumber(int[] nums) { int res = 0; f
2021-10-21 00:33:52
468
原创 算法(3)矩阵旋转问题
矩阵翻转问题矩阵旋转问题1. 逆时针旋转90度2. 顺时针旋转90度3. 旋转180度矩阵旋转问题或者图像旋转问题。1. 逆时针旋转90度逆时针旋转90度可以先沿左上到右下对角线翻转,再上下翻转。如矩阵1 2 34 5 67 8 9首先对角线翻转,得到1 4 7 2 5 83 6 9再上下翻转,得到3 6 92 5 81 4 7恰好是原矩阵逆时针旋转90度的结果。2. 顺时针旋转90度顺时针旋转90度可以先沿右上到左下对角线翻转,再上下翻转。如矩阵1 2 3
2020-06-16 09:50:42
2161
原创 一种求二进制子集的方法
二进制数的“子集”这里的“子集“指的是对于原二进制数中1的选择,如对于一个二进制数01101,有3个1,则有8个“子集”,分别为:00000,00001,00101,01000,01100,01001,00101,01101。求“子集”有两种方法求子集:一种是遍历所有情况,判断其是否子集,如01101需要判断00000到01101。int state = 13; // 01101for(int i = 0; i <= state; i++){ if(i & state == i){
2020-06-06 11:48:42
641
1
原创 算法(2)子集问题
子集问题给定n个元素,要求找出其所有的子集(包括空集和自身),与全排列问题不同,子集不要求元素顺序,且不能有重复的子集。如给定[1,2,3],则其子集为:[],[1],[2],[3],[1,2],[1,3],[2,3],[1,2,3]共8个。子集问题主要有两种,有重复元素和无重复元素。1. 无重复元素对应问题:子集1.1 二进制法给定元素中没有重复元素,此时子集个数是一定的,为2^n个。对于一个元素只需要考虑是否考虑取该元素即可,因此很自然的可以用二进制来表示:1表示取该元素,0表示不
2020-06-04 10:23:59
1180
原创 算法(1)全排列问题
全排列问题全排列问题为给定n个元素,返回这些元素的全排列。如给定abc,其全排列为abc,acb,bac,bca,cab,cba共6个。全排列问题可以分为两种形式:有重复元素的全排列和无重复元素的全排列。1. 无重复元素给定元素中没有重复的元素。如给定abc,其全排列为abc,acb,bac,bca,cab,cba。有两种方法,交换法和回溯法。1.1 回溯法回溯法很好理解,遍历所有元素,对于已经访问过的元素标记为已访问,则后续不再使用该元素。时间复杂度为O(n!)class Soluti
2020-06-03 22:41:02
723
原创 《C++ Primer》阅读笔记之第七章——类
C++ Primer 第七章 类1. 常量成员函数2. 构造函数1. 关于常量构造函数的问题2. 内联函数3. 默认构造函数4. 构造函数初始化列表5. 初始化顺序6. 委托构造函数7. 隐式类类型转换8. explicit关键字3. 访问控制与封装1. class与struct的不同2. 友元4. 类的其他特性1. 可变数据成员5. 类的作用域1. 名字查找2. 同名声明的使用6. 聚合类7. 字面值常量类8. 静态成员1. 静态成员的定义2. 静态成员的调用3. 静态成员变量的初始化4. 特殊场景《
2020-05-16 16:16:37
125
原创 cmake必须执行两次的问题
在使用CMakeLists.txt 文件编译c++的过程中,遇到一个问题项目需要使用c++11,,于是使用以下CMakeLists文件cmake_minimum_required(VERSION 2.8)set(CMAKE_BUILD_TYPE "Release") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")proj...
2018-07-31 19:48:33
1495
原创 latex 缺少 ptmb 和 phvb 的问题
使用cvpr.sty时会提示一下错误信息。! \font\cvprtenhv=phvb at 8.0pt not loadable: Metric (TFM) file not found.! \font\elvbf=phvb at 8.0pt not loadable: Metric (TFM) file not found.我使用的是texlive2017 windows版,
2017-11-30 13:44:20
2438
空空如也
为什么多线程比单线程慢?
2020-08-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人