Resive world

Come world to Record life


  • Home

  • Tags

  • Categories

  • Archives

  • Sitemap

  • Search

热学笔记

Posted on 2023-06-27 | In Whk

【Whk Note】生物记忆内容

Posted on 2023-01-09 | In Whk

各种杂七杂八的记忆内容

Read more »

【Whk Note】各种化学键的强弱

Posted on 2023-01-09 | In Whk

影响各种化学键的强弱的主要因素

Read more »

开发备忘录

Posted on 2022-11-30

Windows 下 SSH / Git 配置代理

在 C:\Users\reqwey\.ssh 目录下新建 config 文件,并写入以下内容:(其中 6666 是代理软件的端口)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#Windows用户,注意替换你的端口号和connect.exe的路径
ProxyCommand "D:\Program Files\Git\mingw64\bin\connect" -S 127.0.0.1:6666 -a none %h %p

#MacOS用户用下方这条命令,注意替换你的端口号
#ProxyCommand nc -v -x 127.0.0.1:6666 %h %p

Host github.com
User git
Port 22
Hostname github.com
# 注意修改路径为你的路径
IdentityFile "C:\Users\reqwey\.ssh\id_rsa"
TCPKeepAlive yes

Host ssh.github.com
User git
Port 443
Hostname ssh.github.com
# 注意修改路径为你的路径
IdentityFile "C:\Users\reqwey\.ssh\id_rsa"
TCPKeepAlive yes

Socket.io server 4.x 遍历已连接的所有 Socket

1
for (let [id, socket] of io.sockets.sockets) {}

其中 io.sockets.sockets 为 Map。单独取一个需要使用 .get(socket_id) 语法

国内 Electron 安装失败

  • 使用 yarn install 而不是 npm install
  • 修改 node_modules/electron/install.js 内容如下
1
2
3
4
5
6
7
8
9
10
11
12
downloadArtifact({
version,
artifactName: 'electron',
force: process.env.force_no_cache === 'true',
cacheRoot: process.env.electron_config_cache,
checksums: process.env.electron_use_remote_checksums ? undefined : require('./checksums.json'),
+ mirrorOptions: {
+ mirror: 'https://cdn.npmmirror.com/binaries/electron/'
+ },
platform,
arch
}).then(extractFile).catch(err => {

《羊了个羊》程序员过关攻略

Posted on 2022-09-17 | In rust

热搜第一羊了个羊微信小游戏程序员过关攻略。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
use std::{sync::Arc, time::Duration};

use anyhow::{anyhow, Result};

use reqwest::Client;

const USER_AGENT:&str = "Mozilla/5.0 (iPhone; CPU iPhone OS 16_0_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E158 MicroMessenger/8.0.26(0x18002b36) NetType/5G Language/zh_CN";
const TOKEN:&str = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2OTQ0MDkwNzMsIm5iZiI6MTY2MzMwNjg3MywiaWF0IjoxNjYzMzA1MDczLCJqdGkiOiJDTTpjYXRfbWF0Y2g6bHQxMjM0NTYiLCJvcGVuX2lkIjoiIiwidWlkIjo3NTY0NzI5NywiZGVidWciOiIiLCJsYW5nIjoiIn0.mPe9Y3ghiyXY1gNczgAyS4J9HC_jSu_5RitG4MVPSM4";

// 完成关卡
async fn finish_game(rank_time: Arc<u32>) -> Result<()> {
let url = format!("https://cat-match.easygame2021.com/sheep/v1/game/game_over?rank_score=1&rank_state=1&rank_time={}&rank_role=1&skin=1", rank_time);

let data = Client::builder()
.user_agent(USER_AGENT)
.timeout(Duration::from_secs(1))
.build()?
.get(url)
.header("t", TOKEN.to_string())
.header("Content-Type", "application/json")
.header("host", "cat-match.easygame2021.com")
.send()
.await?
.json::<serde_json::Value>()
.await?;

if data.get("err_code").is_some() && data.get("err_code").unwrap().as_u64().unwrap() == 0 {
Ok(())
} else {
Err(anyhow!("请检查配置项t."))
}
}

#[tokio::main]
async fn main() -> Result<()> {
let secs = Arc::new(10);
let times = 10;
for _ in 0..times {
if let Err(e) = finish_game(secs.clone()).await {
println!("闯关失败, {:?}", e);
} else {
println!("成功完成一次闯关!");
};
}
Ok(())
}
  • 本代码仅供学习交流,严禁用作商业行为!
  • 因他人私自不正当使用造成的违法违规行为与本人无关!
  • 如有任何问题可联系本人删除!

「数据结构与算法」B 树 与 B+ 树

Posted on 2022-08-15 | In 数据结构

一般情况,我们可以把整个数据结构存储到计算机的主存中;可如果数据更多装不下主存,那么意味着必须把数据结构放到磁盘上。
此时“大O模型”不再适用,因为大O分析假设所有操作耗时都是相同的,所以涉及到磁盘I/O就不再适用了。与内存相比,磁盘必须花成倍的时间来存取一个数据元素,这是因为磁盘的机械部件读写数据的速度远远赶不上纯电子媒体的内存。

1
【CPU】 <---> 【内存】 <--I/O--> 【磁盘】

当在大量数据存储中,查询时我们不能一下子将所有数据加载到内存中,只能逐一加载磁盘页,每个磁盘页对应树的节点。造成大量磁盘I/O操作(最坏情况下为树的高度)。
平衡二叉树由于树深度过大而造成磁盘I/O读写过于频繁,进而导致效率低下。
为了减少磁盘I/O操作的次数,就你必须降低树的深度,将“瘦高”的树变得“矮胖”。
所以,就引入了B 树。B 树利用多个分支(称为子树)的节点,减少获取记录时所经历的节点数,从而达到节省存取时间的目的。

Read more »

「数据结构与算法」常见算法思想

Posted on 2022-07-25 | In 数据结构

数据结构可以看作是算法实现的容器,通过一系列特殊结构的数据集合,能够将算法更为高效而可靠的执行起来。
算法(Algorithm)是为了解决一个特定的问题而精心设计的一套数学模型以及在这套数学模型上的一系列操作步骤,这些操作步骤是将描述的输入数据逐步处理、转换,并最后得到一个确定的结果。
一般来说,算法设计没有什么固定的方法可循。但是通过大量的实践,也总结出算法某些共性的规律,包括枚举(Enumeration)、递归(Recursion)、分支法(Divide and Conquer)、贪心法(Greedy)、回溯法(Backtracking)、动态规划法(Dynamic Programming)等。

Read more »

「数据结构与算法」Trie 树 与 AC 自动机

Posted on 2022-07-06 | In 数据结构

Trie 树,也叫“字典树”、“前缀树”。它是一种有序树形结构。是一种专门处理字符串匹配的数据结构,用来解决在一组字符串集合中快速查找某个字符串的问题。
AC 自动机以**Trie 树的结构为基础,结合KMP的思想**建立的,是一种用于解决多模式匹配问题的经典算法。

Read more »

「数据结构与算法」单模式字符串匹配算法(BF、RK、KMP、BM)

Posted on 2022-06-25 | In 数据结构

介绍字符串匹配算法之前,先定义几个概念:

  • 主串Text: 长度记作 n;
  • 模式串Pattern: 长度记作 m,并且 m<=n。
  • 有效位移s(Valid Shift):即模式串在主串中出现,并且位置移动 s 次。
Read more »

「数据结构与算法」二分查找

Posted on 2022-06-02 | In 数据结构

二分查找(Binary Search)又称折半查找、二分搜索、折半搜索等,查找思想有点类似分治思想,对应的时间复杂度为O(logn)。
二分查找算法仅适用于有序且使用顺序存储结构的序列(比如有序数组)。
核心思想是:不断地缩小搜索区域,降低查找目标元素的难度。(每次都通过跟区间的中间元素对比,将待查找的区间缩小为之前的一半,直到找到要查找的元素,或者区间被缩小为 0。)

  • 以在升序序列中查找目标元素为例,二分查找算法的实现思路是:
    1. 初始状态下,将整个序列作为搜索区域(假设为 [B, E]);
    2. 找到搜索区域内的中间元素(假设所在位置为 M),和目标元素进行比对。如果相等,则搜索成功;如果中间元素大于目标元素,将左侧 [B, M-1] 作为新的搜素区域;反之,若中间元素小于目标元素,将右侧 [M+1, E] 作为新的搜素区域;
    3. 重复执行第二步,直至找到目标元素。如果搜索区域无法再缩小,且区域内不包含任何元素,表明整个序列中没有目标元素,查找失败。
      Read more »
1…789…58

574 posts
69 categories
286 tags
© 2024 Companyd
Powered by Hexo
|
Theme — NexT.Muse v5.1.4