一种计算整数位1个数的新方法
前言
最近看阮一峰老师的每周科技周刊, 发现一个有意思的算法1, 具体的方法文章中都写了, 不过这里还是介绍一下具体的思路以及其Python版的实现.
算法
一般来说, 计算位1 的个数可以通过下面的两种方法:
def calcbit1_v1(n):
return bin(n).count("1")
def calcbit1_v2(n):
ans = 0
while n:
tmp = n & 1 # 取最末位
ans += tmp
n >>= 1 # 进位
return ans
文中给出的方法是下面这样的:
def calcbit1_v3(n):
total...
Zlibrary无法访问的几种解决方案
针对zlibrary的解决方案
(首选)下载app(仅限安卓使用, 需要🪜) 链接1, 链接2.
使用telegram, 前提是注册过账户, 这时候可以进入其群组频道, 然后由机器人代找书籍. 这里给出一个网站, 可以通过这个来获取最新的tor链接, 以及下载安卓apk和电报群组.
tor浏览器, 配置复杂, 且比较慢(下载时候尤其如此, 20MB以内建议发邮箱), 但是也算是一个选择, 附上链接: tor1;
其他替代方案
libgen1, libgen2, libgen3跟zlibrary差不多, 不过速度快.
Google+filetype:pdf.
国内网盘搜索.
如果可以, 用sci-hub proxy search links1.
...
用ascii字符打印一棵二叉树(python, c++)
可视化(层序)
其实力扣为我们提供了一个树节点的可视化, 但是这个可视化并不好用, 如果题目要求我们生成一棵树, 那么出来的结果并不能被打印出来, 于是我们来看看在本地(根据一棵树的根节点)打印出整棵树. 这里参考了力扣的一道题目655. 输出二叉树 - 力扣(LeetCode), 相应修改后即为本程序.
def print_Tree():
# m:层数
# n:列数
q = deque([root])
m = 0
while q:
for _ in range(len(q)):
cur = q.popleft()
# if not (cur.left or cur.right)...
阿里云服务器(ubuntu)配置nextcloud个人网盘
写在前面
最近迷恋上了云服务器的配置, 感觉云服务器能做的事情太多了, 不管是docker还是直接部署, 都是相当方便快捷的, 下面来看看在阿里云服务器配置nextcloud网盘的基本配置方法, 这里参考了一篇文章1, 写的相当详细了, 我这里只是做一些补充.
配置前的准备
服务器端
开端口
阿里云防火墙开启:10000, 然后在服务器终端:
addtcp 10000
reufw
快捷命令alias设置可以看我的leanote那篇博客.
docker-compose安装
基于Python:(容易)
sudo pip3 install docker-compose -i https://pypi.mirrors.ustc.edu.cn/simple/
效...
Macos创建守护进程与定时任务(launchctl)
写在前面
深入了解MacOS, 就不得不提一下launchctl命令, 其实就像Linux下的systemctl有异曲同工之妙, 但是还有一些不一样的地方, 其功能也是相当强大, 下面来总结一下这个命令与常见用法1, 主要包括以下几点:
守护进程(开机启动项与后台服务项)2
定时任务
预备知识
维基百科将 launchd 定义为“一个统一的开源服务管理框架,用于启动、停止和管理守护进程、应用程序、进程和脚本。它由Apple的Dave Zarzycki编写和设计,随Mac OS X Tiger一起推出,并根据Apache许可证获得许可。
先来看一下MacOS中能通过launchctl创建守护进程的一些文件的存放位置:
~/Library/LaunchAge...
配置云服务器(ubuntu)的vnc守护进程(服务)
写在前面
之前配置过了基于Ubuntu的阿里云服务器, 并且通过vnc远程查看UI界面, 但是美中不足的一点就是每次开启ssh会话都要重新输入vncserver -kill :1和vncserver -geometry 1920x1080 :1, 很不方便.
查看Google发现有人也遇到了这个问题, 并且给出了创建systemd服务的解决方案[^1], 下面来看看这是如何配置和实现的.
方法
下面我的操作均在root用户下. 所以家目录为/root.
安装
首先需要安装vnc的服务端, 这里我已经安装过了, 用的是vnc4server, (需要通过aptitude以及换源安装), 当然如果直接用apt的话可以安装tightvncserver, 这里就不赘述了.
...
阿里云服务器(ubuntu)配置calibre Web图书管理服务
写在前面
这次来配置一个基于calibre电子书管理软件web镜像的电子图书馆, 因为自己本地的电子书太多了, 各个文件夹都有, 显得比较乱糟糟, 有了calibre-web, 这个问题就可以解决了, 主要参考了1.
预备知识
配置Linux server, 现在已经是轻车熟路了, 但是这次配置的calibre需要一个新的内容, docker. 之前虽然接触过一些, 但是还是不够熟悉, 下面的一步步配置也算是对docker基本命令做一个总结了.
docker 安装参考2.
先pull一下镜像, 稍后会用到.
docker pull linuxserver/calibre-web
服务器配置
端口配置
管理界面开启8083/TCP.
参考之前我设置的快捷命令...
通过阿里云server配置属于自己的云笔记leanote
写在前面
有了服务器, 能做的事情就相当多了, 话不多说, 配置一个云笔记应用先. 检索一遍之后, 发现现在主流的云笔记定制是通过一个叫leanote(中文:蚂蚁笔记)的程序完成的, 虽然要花钱, 但那是对用他们公式的服务器来说的, 自己配置的话不花钱可定制性还特别高, 下面来看看. 服务器配置部分参考1,2.
配置前的准备
客户端
mac或安卓端安装一下leanote客户端, 之后要用.
brew install leanote --cask
安卓的话客户端直接在官方GitHub下载.
其实直接在浏览器访问也可以, 但是总觉得应该有一个客户端方便一些.
服务器端
服务器端需要通过wget下载, 但是太慢了(因为代理出了一些问题), 这里我先下载到本地, 然...
共计 492 篇文章,62 页。
您是Zorch的第 个小伙伴
Hits