首页
畅所欲言
友情链接
壁纸大全
数据统计
推荐
工具箱
在线白板
Search
1
职教云小助手重构更新,职教云助手最新版下载地址【已和谐】
14,231 阅读
2
职教云-智慧职教,网课观看分析(秒刷网课)
11,464 阅读
3
gradle-5.4.1-all.zip下载
9,507 阅读
4
职教云-智慧职教,签到补签分析(逆天改命系列)
8,201 阅读
5
一个优秀的程序员从写文档开始:免费领14个月语雀云笔记会员
7,017 阅读
学习笔记
Web
Python
转载文章
算法刷题
JS逆向
综合笔记
安卓
物联网
Java
C
资源收集
软件收藏
网络资源
影视专辑
TED英语角
随便写写
随手拍
登录
/
注册
Search
Lan
累计撰写
617
篇文章
累计收到
629
条评论
首页
栏目
学习笔记
Web
Python
转载文章
算法刷题
JS逆向
综合笔记
安卓
物联网
Java
C
资源收集
软件收藏
网络资源
影视专辑
TED英语角
随便写写
随手拍
页面
畅所欲言
友情链接
壁纸大全
数据统计
推荐
工具箱
在线白板
搜索到
617
篇与
的结果
2022-11-16
有序数组的平方 双指针法
给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例 1: 输入:nums = [-4,-1,0,3,10] 输出:[0,1,9,16,100] 解释:平方后,数组变为 [16,1,0,9,100],排序后,数组变为 [0,1,9,16,100]示例 2: 输入:nums = [-7,-3,2,3,11] 输出:[4,9,9,49,121]双指针法数组其实是有序的, 只不过负数平方之后可能成为最大数了。那么数组平方的最大值就在数组的两端,不是最左边就是最右边,不可能是中间。此时可以考虑双指针法了,i指向起始位置,j指向终止位置。定义一个新数组result,和A数组一样的大小,让k指向result数组终止位置。如果A[i] A[i] < A[j] A[j] 那么result[k--] = A[j] * A[j]; 。如果A[i] A[i] >= A[j] A[j] 那么result[k--] = A[i] * A[i]; 。https://www.yuque.com/lxyo/course/vb7zmoutvnp5zeeo?#XjKZc// // Created by Lan on 2022/11/16. // #include <vector> #include <stdio.h> using namespace std; int main() { // 初始数组 vector<int> nums = {-4,-1,0,3,10}; // 存放结果的数组 vector<int> result(nums.size(), 0); // 用于存结果的指针 int k = nums.size() - 1; // 因为原数组是有序的,但是由于平方之后有的负数会比正数大,所以可以从两边 // 同时往中间走,直到左右指针相遇。 // 遍历一次,首指针的平方与尾指针的平方比较 // 选择大的,然后放在结果指针,然后结果指针-1 for (int i = 0, j = nums.size() - 1; i <= j;) { if (nums[i] * nums[i] > nums[j] * nums[j]) { result[k--] = nums[i] * nums[i]; i++; } else { result[k--] = nums[j] * nums[j]; j--; } } // 遍历输出结果 for (int i = 0; i < result.size(); ++i) { printf("%d\t", result[i]); } return 1; }
2022年11月16日
323 阅读
0 评论
0 点赞
2022-11-09
C语言 将一个二维数组行和列的元素互换,存到另一个二维数组中
// // Created by Lan on 2022/11/9. // #include <cstdio> int main() { int arr[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; int result[3][3]; for (int i = 0; i < 3; ++i) { for (int j = 0; j < 3; ++j) { result[i][j] = arr[3 - j - 1][i]; printf("%d\t", result[i][j]); } printf("\n"); } return 1; }最近发东西比较频繁,因为我的图床写好了,上传图片方便多了。
2022年11月09日
350 阅读
0 评论
0 点赞
2022-11-08
invalid request block size: 6030 (max 4096)...skip
检查了一下请求日志,发现报错了invalid request block size: 6030 (max 4096)...skip 被uwsgi拦截了。解决方案:配置文件新增一行buffer-size 32768
2022年11月08日
193 阅读
0 评论
0 点赞
2022-11-08
C语言 二叉树的最大值和高度
int get_height(Node *node) { int left, right, max; if (node) { left = get_height(node->left); right = get_height(node->right); max = left > right ? left : right; return max + 1; } else { return 0; } } int get_max(Node *node) { if (node) { int ml = get_max(node->left); int mr = get_max(node->right); int root = node->data; int max = ml > mr ? ml : mr; return max > root ? max : root; } else { return -1; } }
2022年11月08日
268 阅读
0 评论
0 点赞
2022-11-07
图床,通过Python调用api上传图片到Gitlab
用过一段时间的PicGo,但是感觉太重了,为了一个上传图片去装一个软件有点太麻烦。然后目前个人感觉也就Gitlab速度还可以一点,于是昨天翻了官方文档踩了很多坑,总算搞好了。现将关键代码放到这里。 file_path = datetime.datetime.now().strftime('zb_users/upload/%Y/%m/') headers = {'PRIVATE-TOKEN': '这里放你的项目token'} img = file.file.read() ext = file.content_type.split('/')[-1] file_path = urllib.parse.quote(file_path + uuid.uuid4().hex + '.' + ext).replace('/', '%2f') url = f'https://gitlab.com/api/v4/projects/这里放你的项目ID/repository/files/{file_path}' response = await requests.post(url, headers=headers, json={ 'branch': 'master', 'content': base64.b64encode(img).decode('utf-8'), 'author_email': 'blog@lanol.cn', 'author_name': 'Lan', 'encoding': 'base64', 'commit_message': 'www.lanol.cn' }) res = await response.json()然后花了点时间写了个小前端用来上传,支持选择,拖拽,粘贴文件进行上传。
2022年11月07日
549 阅读
1 评论
0 点赞
2022-11-07
爱普生l310打印机 打印不出蓝色和黄色 但是有墨水
喷嘴检测打印效果:一开始我以为是没有墨水了,然后我看了下墨盒,里面墨水还有很多。然后经过周折,想起会不会是喷头堵住了,于是使用驱动自带的打印头清洗。然后发现还是没有用。于是开始自我怀疑。后面发现清洗之后本来彻底没颜色了,但是多了一条小蓝线。于是又看见一个大墨量清洗。尝试之后就可以了,果然喷墨打印机还是得经常用不能闲着,
2022年11月07日
4,113 阅读
0 评论
3 点赞
2022-11-04
二叉树的C实现
#include <stdio.h> #include <stdlib.h> typedef struct node { int data; struct node *left; struct node *right; } Node; typedef struct tree { Node *root; } Tree; void insert(Tree &tree, int value) { Node *node = static_cast<Node *>(malloc(sizeof(Node))); node->data = value; node->left = NULL; node->right = NULL; if (tree.root == NULL) { tree.root = node; } else { Node *temp = tree.root; while (temp != NULL) { if (value < temp->data) { if (temp->left == NULL) { temp->left = node; return; } else { temp = temp->left; } } else { if (temp->right == NULL) { temp->right = node; return; } else { temp = temp->right; } } } } } void display(Node *node) { if (node != nullptr) { display(node->left); printf("%d\n", node->data); display(node->right); } } int main() { int arr[7] = {6, 3, 8, 2, 5, 1, 7}; Tree tree; tree.root = NULL; for (int i = 0; i < 7; ++i) { insert(tree, arr[i]); } display(tree.root); }
2022年11月04日
172 阅读
0 评论
0 点赞
1
...
13
14
15
...
89