自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(95)
  • 收藏
  • 关注

原创 Mac显示隐藏文件目录

再说我git呢,也找不到。一 which git ,出来什么usr目录,command+shift+. 就可以看到啦,再操作一次的话就隐藏。寻思也没看见这目录呀,于是估计它是被隐藏了,那么如何查看呢。最近在使用mac本,配了ssh,找不到。...

2022-08-06 22:00:37 377 1

原创 Github 设置SSH免密登录

2.在github中的settings中找到SSHandGPGkeys,点击NewSSHkey。我们在githubclone的时候有两种选择,HTTPS或SSH。HTTPS不必多说,主要说SSH。生成.ssh文件夹(-C后面为描述,我们写我们的邮箱),里面有公钥私钥。(要敲三次回车)如图。而且我们可以发现clone时的SSH没有报警告了。把公钥内容复制进去,点击AddSSHkey。1.在用户目录下gitbash,输入命令。我们是可以看到有一个警告的,我们开始做。...

2022-07-28 19:11:33 422

原创 已解决:git push代码出现Support for password authentication was removed on August 13, 2021.

找到Personalaccesstokens,然后点击Generatenewtokens。所以我们需要创建个人访问令牌(personalaccesstoken)。gitpush代码时出现如下情况,尝试几次输入用户名密码还是不行。之后再次push,在输入密码时输入token,成功push代码!意思是20218月13日,取消了对密码验证的支持。生成类似于下方这样,记得保存哦,不然刷新一下就没啦!输入note,选择有效期限(我选择为永久)github中的设置。...

2022-07-28 17:21:01 1517 2

原创 已解决:Connection timed out: connect. If you are behind an HTTP proxy, please configure the proxy

安装了新版AndroidStudio,开始跑一个项目时,出了如下错误Connectiontimedoutconnect.IfyouarebehindanHTTPproxy,pleaseconfiguretheproxysetting。搞了一下代理(改了一下,之后在下方检查连接也是没有问题的,显示successful),解决问题。意思是连接超时连接。如果您在HTTP代理之后,请配置代理设置。看了网上的几种解决方案,都没有太适合的,于是自己在设置中,,......

2022-07-26 21:15:37 8082 1

原创 win10搭建flutter环境踩坑日记

然后去看了网上的博客,又是去改build.gradle中的代理,又是改flutter.gradle,还尝试翻墙,最终总算成功的过去了,然后又蹦出了其他错误,不过没有截图保留。最近在win10上搭建了下flutter环境(当然,我是安卓),按照Flutter中文文档一步一步来的,踩了很多坑,不过最终还是运行出来了。那我改成已有的28行吗,还是不行,就得31,那只能去下了。已有AndroidStudio,之后去安装了Flutter插件,新建项目,运行,出了很多问题。之后就运行出来了,再贴一下!.........

2022-07-25 16:21:54 1007

原创 flutter环境报错:cmdline-tools component is missing Run path/to/sdkmanager--install“cmdline-tools;latest“

之后还有SomeAndroidlicensesnotaccepted.Toresolvethis,runflutterdoctor--android-licenses。怎么办呢,意思是cmdline-tools这个东西没有安装,我们在AndroidStudio中的设置里找到并安装即可,如下图。在运行flutterdoctor命令时报有如下信息。我们运行这个命令,之后要输入数次y,如下图这样。那么所有SDK包许可证就被接受了。......

2022-07-24 19:22:43 4442

原创 算法题——移动零

给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。

2022-07-23 17:07:02 797

原创 堆解析及堆排序

堆是完全二叉树除最后一层上面都是满的最后一层的节点是从左到右按顺序的例小顶堆每个节点的值都小于(等于)左右子节点的值如下就是一个小顶堆。

2022-07-17 22:35:21 109

原创 建造者模式的好处

将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。使用建造者模式主要的优势如下:1.改变代码不用改变原有的代码2.如果一个类构造方法特别复杂,参数可选的,可空的,用构造函数控制会很复杂3.链式调用,很容易看出调用的先后逻辑是什么样的,主要帮助编程的人理清思路举个例子,很常用到的Builder模式就是AlertDialog.Builder,一个弹窗,之前也写过其简单使用:Android中AlertDialog的简单使用...

2022-07-11 15:12:29 1292

原创 算法题——删除有序数组中的重复项

算法题——删除有序数组中的重复项

2022-06-30 11:08:38 143

原创 IDEA/Android Studio中替换(replace)快捷键

IDEA/Android Studio中替换(replace)快捷键

2022-06-16 20:31:19 2566

原创 Kotlin插件 kotlin-android-extensions

kotlin插件 kotlin-android-extensions

2022-06-11 11:04:45 787

原创 OkHttp源码解析——分发器

开原框架之okhttp源码解析——分发器

2022-06-04 14:54:03 173

原创 ViewBinding的简单使用

我们知道ButterKnife已经过时。。首先开启viewBinding:android { ... viewBinding { enabled = true } }} 之后在Activity中操作package com.example.viewbindingdemo;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundl

2022-05-20 21:28:01 519

原创 Android中设置背景线性渐变

我在drawable文件夹中新建一个xml文件先上示例代码以及效果图<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <gradient android:angle="180" android:endColor="#

2022-05-04 19:22:43 1577

原创 Git查看与修改用户名 邮箱

1.查看git config user.name 查看用户名git config user.email 查看邮箱git config --list 也可以看到2.修改修改的话git config --global user.name “xxx” 修改用户名修改邮箱同理

2022-04-21 19:12:19 660

原创 java中判断字符串为空的方法

我们可以使用TextUtils.isEmpty()方法。这是一个非常好用的方法,它可以一次性进行两种空值的判断。当传入的字符串等于null或者等于空字符串的时候,这个方法都会返回true,从而使得我们不需要先单独判断这两种空值再使用逻辑运算符连接起来了。...

2022-03-25 21:02:26 1131

原创 Android中如何将系统自带的标题栏隐藏掉

我们可以看到系统自带的标题栏如下图这样子那么如何去掉呢我们只需要以下代码。获取ActionBar实例,再调用hide()方法就OK啦 //获得ActionBar实例 ActionBar supportActionBar = getSupportActionBar(); if (supportActionBar != null) { //调用hide()方法将标题栏隐藏起来 supportActionBar.h

2022-03-22 11:58:57 4781

原创 C++ 中的优先队列

在C++中有一个东西叫做优先队列,大根堆或小根堆(priority_queue)例如priority_queue<int> p; 就为一个默认的大根堆,相当于priority_queue<int, vector<int>, less<int>> p;相反,priority_queue<int, vector<int>, greater<int>> q;就为小根堆举例代码如下,将大根堆/小根堆的堆顶元素输出#inclu

2022-03-09 14:12:49 457

原创 剑指Offer系列 —— 39. 数组中出现次数超过一半的数字

题目数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]输出: 2思路我们使用摩尔投票法来做。一个val值,一个count值。遍历数组,若count为0,则将val值置为遍历到的值x,并count ++ ;若不为0,又分为两种情况,如val与x相同,则count ++ ,否则count – 。代码如下代码class Solution {public:

2022-03-01 10:46:43 279

原创 设计模式之单例模式

使用场景某个对象全局只需一个实例时优点避免对象重复创建,节省空间并提高效率避免由于操作不同实例导致的逻辑错误饿汉式实现变量在声明时就初始化public class Singleton { private static Singleton instance = new Singleton(); //定义为 private,这就保证了其他类无法实例化此类 private Singleton() { } public static S

2022-02-26 20:33:36 195

原创 LeetCode —— 26. 删除有序数组中的重复项

题目给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。示例输入:nums = [0,0,1,1,1,2,2,3,3,4]输出:5, nums = [0,1,2,3,4]解释:函数应该返回新的长度 5 , 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4 。不需要考虑数组中超出新长度后面的元素。思路双指针算法。首先一个指针指向第一个位置,第二个指针从下一个指针开始遍

2022-02-26 20:01:02 231

原创 剑指Offer系列—— 47. 礼物的最大价值

题目在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物?示例输入: [ [1,3,1], [1,5,1], [4,2,1]]输出: 12解释: 路径 1→3→5→2→1 可以拿到最多价值的礼物思路我们每次只能向右或向下走一个格子,所以第一行、第一列只有一种走法,可以开一个二维数组先记录下

2022-02-26 10:28:02 62

原创 && 和 || 的优先级谁更高?

答案是前者,逻辑与的优先级更高我们来做个例子验证一下#include <iostream>using namespace std;int main() { if (false && false || true) cout << "true"; else cout << "false"; return 0;}如果逻辑与的优先级更高的话会输出true,否则输出false。输出的为true,所以逻辑与的优先级更高。

2022-02-23 10:20:23 2142

原创 C++中sort函数从大到小排序

我们知道C++中有一个函数 sort()它默认是从小到大排序,那么如何从大到小排呢?一种方法是使用greater(),如下例子#include <iostream>#include <vector>#include <algorithm>using namespace std;int main() { vector<int> nums = {3, 2, 4, 1, 5}; sort(nums.begin(), nums.end

2022-02-07 23:15:19 6323

原创 剑指Offer系列——61. 扑克牌中的顺子

题目从若干副扑克牌中随机抽 5 张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。示例输入: [1,2,3,4,5]输出: True思路首先将数组排序,数组前面可能会有0,看后面不为0的数字相邻两个是否有相同的,如果有相同的,那么它一定不是顺子,返回false。否则,再看除0外的最大值与最小值差值是否在4以内,这样才能够成为顺子。C++代码如下代码class Solution

2022-02-06 17:51:45 812

原创 Could not identify launch activity: Default Activity not found Error while Launching activity

Android Studio中出现Could not identify launch activity: Default Activity not found.Error while Launching activity意为无法识别启动活动:未找到默认活动 启动活动时出错检查AndroidManifest.xml中是否有如下设置给要启动的activity配置如下代码<intent-filter> <action android:name="android.intent.acti

2022-02-06 11:48:49 29645 11

原创 Installed Build Tools revision 31.0.0 is corrupted. Remove and install again using the SDK Manager.

Android Studio中出现:Installed Build Tools revision 31.0.0 is corrupted. Remove and install again using the SDK Manager.意为:已安装的生成工具版本31.0.0已损坏。使用SDK管理器删除并重新安装。31.0.0版本出现了问题。我们打开SDK Manager,查看SDK Tools,可以看到已安装的和未安装的版本,如下图接下来我们到Project Structure中找到Module,将Bu

2022-02-06 10:04:40 10867 5

原创 剑指Offer系列——42. 连续子数组的最大和

题目输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。示例输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大为 6。思路我们维护一个变量s,它的含义是以前一个位置为结尾的连续子数组的最大和。当遍历到一个数时,看s是否大于0,若大于0,那么以我目前这个位置为结尾的连续子数组的最大值为本位置的数加上s;若s小于0,那么对于我这个位置为负收益,还不如不加,直接为我本数字,以此类推,维护

2022-02-05 16:09:51 285

原创 剑指Offer系列——48. 最长不含重复字符的子字符串

题目请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。示例输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。思路双指针来做。用哈希表来存串中每个字母的个数。两个指针最开始指向最开始位置,首先第一个指针往后移,然后哈希表中字母的个数累加,一旦有某个字母个数大于1了,第二个指针往后移直到刚才的字母个数为1,以此类推,维护最大值。我们计算的其实是以每个字母为结尾的最长不重复串,然后取最大值代码class Sol

2022-02-05 15:14:18 493

原创 Android中Activity之间如何跳转

一个Android应用中包含多个Activity,Activity之间必然存在某种跳转关系在Android中,Activity与Activity之间的跳转是借助Intent对象来实现的。步骤创建Intent对象设置请求目的地携带数据(可选)发送请求(启动新的Activity)扩展若要携带数据直接添加基本类型参数:i.putExtra( key, value );Key只能是字符串类型Value可以是基本数据类型、String、bundle传递类的对象(需要序列化对象后才可传递

2022-02-04 20:51:04 3450

原创 Android Studio中如何新建Activity

Activity是Android应用中最重要的核心组件,每一个应用屏幕就是一个Activity1.我们需要新建一个类继承Activity类(AppCompatActivity),而且必须实现OnCreate()回调方法,创建Activity时自动调用,相当于构造方法。也可以在Android Studio中直接比较快捷地建Activity,如下图2.为新的Activity绑定视图页面。在res/layout/目录下建立新的xml布局文件,通过setContentView()方法为Activity绑定该视图

2022-02-04 19:13:28 11564

原创 剑指Offer系列——11. 旋转数组的最小数字

题目把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。给你一个可能存在 重复 元素值的数组 numbers ,它原来是一个升序排列的数组,并按上述情形进行了一次旋转。请返回旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一次旋转,该数组的最小值为1。示例输入:[3,4,5,1,2]输出:1思路我们用二分来做,二分之前要将最后的值清理一下,直到与第一个数字不相等,否则无法判断。然后开始二分,中点值与第一个数字比较,根据情况更新区间。若中点值

2022-02-04 15:37:17 77

原创 剑指Offer系列——53 - I. 在排序数组中查找数字 I

题目统计一个数字在排序数组中出现的次数。示例输入: nums = [5,7,7,8,8,10], target = 8输出: 2限制0 <= nums.length <= 105-109 <= nums[i] <= 109nums 是一个非递减数组-109 <= target <= 109思路用二分来做,找到数字第一次出现的位置和最后一次出现的位置,从而可以计算出数字出现的次数代码class Solution {public: in

2022-02-04 11:31:44 357

原创 剑指Offer系列——58 - I. 翻转单词顺序

题目输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student. “,则输出"student. a am I”。(单词之间用一个空格隔开,且句首和句尾没有多余空格)示例输入:"nowcoder. a am I"返回值:"I am a nowcoder."思路我们先翻转整个字符串,再将每个单词逐一翻转,就可以达到我们想要的效果代码class Solution {public: str

2022-02-04 10:37:36 175

原创 剑指Offer系列——29. 顺时针打印矩阵

题目输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。示例[[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]]则依次打印出数字[1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10]限制0 <= matrix.length <= 1000 <= matrix[i].length <= 100思路使用一个偏移量来控制行走方向,用一个布尔类型的数组存储某位置是否已经走过。当要

2022-02-03 12:25:34 374

原创 剑指Offer系列——14 - I. 剪绳子

题目给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]…k[m-1] 。请问 k[0]k[1]…*k[m-1] 可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。示例输入: 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36限制2 <= n <= 58思路有一个结论,我们应把绳子分为尽

2022-02-03 11:08:37 417

原创 剑指Offer系列—— 21. 调整数组顺序使奇数位于偶数前面

题目输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数在数组的前半部分,所有偶数在数组的后半部分。示例输入:nums = [1,2,3,4]输出:[1,3,2,4] 注:[3,1,2,4] 也是正确的答案之一。思路双指针来做,第一个指针指向数组第一个位置,第二个指针指向最后一个位置,前指针后移,后指针前移,直到第一个指针指向偶数,第二个指针指向奇数,将两个数互换。重复操作代码class Solution {public: vector<int> e

2022-02-02 15:31:02 387

原创 剑指Offer系列—— 66. 构建乘积数组

题目给定一个数组 A[0,1,…,n-1],请构建一个数组 B[0,1,…,n-1],其中 B[i] 的值是数组 A 中除了下标 i 以外的元素的积, 即 B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1]。不能使用除法。示例输入: [1,2,3,4,5]输出: [120,60,40,30,24]思路新开一个数组,从前往后遍历一次原数组,乘起来,从后往前遍历一次,乘起来,就OK代码class Solution {public: vector<in

2022-02-02 11:14:39 277

原创 剑指Offer系列—— 63. 股票的最大利润

题目假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?示例输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格。思路我们遍历数组,维护两个变量,一个为目前遇到的最小值,另一个为目前的最大利润代码class Solution {public: in

2022-02-02 10:25:32 340

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除