Ubuntu 20.04 全新安装 优化配置 界面美化 常用软件全攻略
之前将系统从 Ubuntu 18.04 升级到了 Ubuntu 20.04,但是由于升级的方式造成系统不够稳定,Xorg 进程 经常占用 CPU 到 100% 及以上,造成电脑非常卡顿。因此重新进行 Ubuntu 20.04 全盘安装,并进行配置美化。
制作 Ubuntu 20.04 镜像 U盘
下载镜像文件
从 ubuntu 官方网站 下载 ubuntu-20.04.desktop-amd64.iso ISO 镜像文件。
下载 Rufus 镜像制作工具
从 Rufus 官方网站 下载并安装 rufus-3.11exe。
制作 Ubuntu 20.04 系统启动 U盘
使用 Rufus 制作系统启动U盘,注意 分区类型 选择 GPT,目标系统类型 选择 `UEFI(非 CSM)。制作系统启动 U盘会清除 U盘数据,注意备份。
点击开始,选择 以 DD 镜像 模式写入。
注意: 不要使用 ISO镜像 模式 或 Ultra ISO 软件制作 U盘,否则安装过程中可能会出现以下报错:
1234# EnglishThe 'grub-efi-amd64-sig ...
Ubuntu 18.04 使用Komorebi实现动态桌面
安装 Komorebi
从 github 项目 release 页面 下载 Komorebi 的 deb 文件,并双击安装即可。
若不成功则使用命令安装:
12345678sudo add-apt-repository ppa:gnome3-team/gnome3 -ysudo add-apt-repository ppa:vala-team -ysudo add-apt-repository ppa:gnome3-team/gnome3-staging -ysudo apt install cmake valac libgtk-3-dev libgee-0.8-dev libclutter-gtk-1.0-dev libclutter-1.0-dev libwebkit2gtk-4.0-dev libclutter-gst-3.0-devgit clone https://github.com/cheesecakeufo/komorebi.gitcd komorebimkdir build && cd buildcmake .. && sudo ...
LeetCode 题目分类汇总
汇总
题目
解题记录
难度
关键字
4
Median of Two Sorted Arrays
困难
二分
33
Search in Rotated Sorted Array
中等
二分
34
Find First and Last Position of Element in Sorted Array
中等
二分
52
Merge Intervals
中等
排序
69
Sqrt(x)
简单
二分,牛顿迭代法
74
Search a 2D Matrix
中等
二分
76
Minimum Window Substring
困难
双指针
81
Search in Rotated Sorted Array II
中等
二分
88
Merge Sorted Array
简单
双指针
92
Reverse Linked List II
中等
链表
122
Best Time to Buy and Sell Stock II
简单
贪心
135
Candy
困难
贪心
141
Linked List Cycle
简单
链表
142 ...
斐讯K2路由器硬刷救砖
由于刷错Breed导致路由器变砖,通过编程器救回来了,总成本约30元。
准备工作
硬件:淘宝购买即可
变砖的K2路由器(变砖前备份过eeprom,我提供了自己的eeprom但不保证适用于其他设备)
CH341A编程器(15元左右)
SOP8夹子线(15元左右)
软件:百度网盘, 提取码:pwbv
编程器驱动
CH341A编程器软件
K2路由器breed
PandoraBox K2固件
硬操作
路由拆顶盖
后盖封条处两侧有两颗螺丝,拆掉:
然后用卡片沿顶盖缝隙撬开取下顶盖:
flash芯片就是图中的小不点。
连接CH341编程器
编程器背面可以看到24,25两个区域,我们要使用25区域:
按照下图连接板子,USB口朝左,1 引脚在右上角:
然后用SOP8夹子将编程器和路由器flash芯片连接起来,芯片有很小的4,5标注,顺着线将4,5一侧和编程器板子上的4,5一侧对应:
将编程器插入电脑,编程器和路由器均会亮红灯(注意亮灯不一定接触良好,还需要再软件中检测):
软件操作
安装驱动
插入编程器并安装驱动,若安装失败尝试禁用驱动程序强制签名,具体方法参考Win ...
禁用Win10截屏快捷键Win+Shift+S,改用Snipaste(转载)
本文转载自禁用Win10截屏快捷键Win+Shift+S,改用Snipaste
打开注册表
按下Win+R键,输入regedit,回车即可打开;
进入我们要设置的目录
\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced
设置具体禁用的键
新建一个字符串值,数值名称为 DisabledHotkeys,数值数据为 S
关闭注册表、重启电脑
重启后再试试,Win10自带的截图工具快捷键是不是已经失效了。
Git 在 Windows 中管理符号链接
流程
下载最新 Git for windows
安装时选中 Enable symbolic links
启用符号链接(需要SeCreateSymbolicLink权限)。注意,现有仓库不受此设置的影响。
克隆仓库并启用符号链接支持 1git clone -c core.symlinks=true <URL>
创建符号链接
符号链接支持指向绝对/相对路径 12mklink /d this-link-points-to c:\that-directorymklink this-link-points-to c:\that-file
目录联结只支持指向绝对路径(命令中的相对路径会被转为绝对路径) 1mklink /j this-link-points-to c:\that-directory
赋予相关权限
若使用符号链接,需要添加权限,详见允许非管理员创建符号链接
完成后重启计算机
官方说明
符号链接
概述:Windows 上没有完全等效的 POSIX 符号链接,默认情况下,非管理员无法使用类似的链接,除非启用开发人员模式并使用相对较新的 Windows 10 版 ...
VS Code Remote 配置 Windows 为服务器
VS Code 远程开发非常方便实用,以下介绍将 Windows 作为 VS Code 远程服务器的方法,完成配置后可以使用其他机器连接到该 Windows 机器进行远程开发。
在 Windows 服务器上安装 SSH Server
安装 OpenSSH Server
以管理员身份运行 Power Shell,执行命令:
12Get-WindowsCapability -Online -Name Open*Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
第一条命令查询可安装的 OpenSSH 组件,输出为:
12345678910111213Name : OpenSSH.Client~~~~0.0.1.0State : InstalledDisplayName : OpenSSH 客户端Description : 基于 OpenSSH 的安全外壳(SSH)客户端,可用于安全密钥管理和远程计算机访问。DownloadSize : 1314377InstallSize : 1 ...
【LeetCode】225. Implement Stack using Queues 解题记录
问题描述
Implement a last-in-first-out (LIFO) stack using only two queues. The implemented stack should support all the functions of a normal stack (push, top, pop, and empty).
Implement the MyStack class:
void push(int x) Pushes element x to the top of the stack.
int pop() Removes the element on the top of the stack and returns it.
int top() Returns the element on the top of the stack.
boolean empty() Returns true if the stack is empty, false otherwise.
Notes:
You must use only standard operati ...
【LeetCode】346. Moving Average from Data Stream 解题记录
问题描述
Given a stream of integers and a window size, calculate the moving average of all integers in the sliding window.
测试样例
12345MovingAverage m = new MovingAverage(3);m.next(1) = 1m.next(10) = (1 + 10) / 2m.next(3) = (1 + 10 + 3) / 3m.next(5) = (10 + 3 + 5) / 3
解题
思路
使用队列来保存窗口数据,保持队列小于等于窗口大小,并记录窗口元素值方便计算平均值。
补充:
队列
时间复杂度 O(n)
代码
12345678910111213141516171819202122232425262728293031323334import java.util.Queue;public class MovingAverage { private Queue<Integer> queue; pri ...
【LeetCode】240. Search a 2D Matrix II 解题记录
问题描述
Write an efficient algorithm that searches for a target value in an m x n integer matrix. The matrix has the following properties:
Integers in each row are sorted in ascending from left to right.
Integers in each column are sorted in ascending from top to bottom.
测试样例
12Input: matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]], target = 5Output: true
12Input: matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]], ...