- 博客(21)
- 收藏
- 关注
原创 二分查找方法
总结二分查找可能会遇到哪些边界情况?为什么示例代码能完美的解决这些边界情况?答:总是可以通过问题转换写出满足L < R的优美代码。二分查找伪代码while( L < R ) { int M = L + (R - L)/2; if( 答案在[M + 1,R]中 ) { // 思考一下,什么情况下能够说明“答案在[M+1,R]中” L = M + 1; } else { // 答案在[L,M]中 R = M; }}
2022-04-16 19:23:30
640
原创 递归函数 C++
递归函数的两个基本要素递归函数的写法有两个基本要素:递归关系问题规模为n时与问题规模为n-1时之间的转换关系计算某个数字的阶乘,递归的关系就是:数字n的阶乘 = 数字n * 数字n-1的阶乘这个函数可以写成: 递归关系的程序段int factorial(int n) {return n * factorial(n-1);}Tips:只知道递归关系是不够的,比如上面这个函数,就会无休止的一直套娃套下去,没有尽头。递归的终止条件递归关系需要有一个递归终止的条件。在计算阶乘中,递归终止的条
2022-04-11 20:44:17
1334
原创 单调栈法leetcode
移掉 K 位数字(中等)class Solution(object): def removeKdigits(self, num, k): stack = [] remain = len(num) - k for digit in num: while k and stack and stack[-1] > digit: stack.pop() k -= .
2021-09-03 14:41:59
174
原创 最大子序列和,最长上升子序列
最大子序列和class Solution: def maxSubArray(self, nums: List[int]) -> int: size = len(nums) if size == 0: return 0 dp = [0 for _ in range(size)] dp[0] = nums[0] for i in range(1, size): if
2021-09-01 23:29:30
132
原创 荷兰国旗三路划分
1.荷兰国旗问题`lc75class Solution: def sortColors(self, nums: List[int]) -> None: n = len(nums) p0 = p1 = 0 for i in range(n): if nums[i] == 1: nums[i], nums[p1] = nums[p1], nums[i] p1 +
2021-09-01 18:01:37
133
原创 [::-1][-1]python
说明python里面的索引的特征是包含起点,但是不包含结束的索引值,-1表示最后一个元素,但是-1是结尾的index,所以含义就是取原始数据的除最后一个元素之外的值[::-1] 顺序相反操作[-1] 读取倒数第一个元素...
2021-08-17 20:37:29
502
原创 ^ [a-zA-Z] [^ a-zA-Z]区别
订阅专栏^ [a-zA-Z]是去匹配目标字符串中以中括号中的a—z或者A—Z开头的字符[^ a-zA-Z]是去匹配目标字符串中非a—z也非A—Z的字符.\d匹配任何十进制数字;这等价于类 [0-9]。\D匹配任何非数字字符;这等价于类 [^0-9]。\s匹配任何空白字符;这等价于类 [ \t\n\r\f\v]。\S匹配任何非空白字符;这相当于类 [^ \t\n\r\f\v]。\w匹配任何字母与数字字符;这相当于类 [a-zA-Z0-9_]。\W匹配任何非字母与数字字符;这相当于类
2021-08-12 21:32:23
1171
原创 docker安装histomicstk
pip --default-timeout=1000 install -U histomicstk --find-links https://girder.github.io/large_image_wheels安装报错,去掉$
2021-08-11 16:59:25
435
原创 numpy.ufunc size changed, may indicate binary incompatibility. Expected 216
报错:numpy.ufunc size changed, may indicate binary incompatibility. Expected 216解决:pip --default-timeout=1000 install -U install --upgrade numpy
2021-08-11 16:58:08
364
原创 Python 列表(List) 的三种遍历
Python 列表(List) 的三种遍历(序号和值)方法三种遍历列表里面序号和值的方法:#!/usr/bin/env python2 # -- coding: utf-8 --3 if name == ‘main’:4 list = [‘html’, ‘js’, ‘css’, ‘python’]56 # 方法17 print ‘遍历列表方法1:’8 for i in list:9 print (“序号:%s 值:%s” % (list
2021-01-06 09:58:32
673
原创 python list
python list数据写入文件看代码复制代码def writeLmk(self,fileName,landmarks): fp = open(fileName,'w+') fp.write( "version: 1"+'\n' "n_points: 68"+'\n' "{"+'\n' ) for i in range(len(landmarks)): fp.write(str(landmarks[i][1]))
2021-01-05 17:55:23
153
原创 json.dumps() 和 json.loads()
这里写自定义目录标题json 模块提供了一种很简单的方式来编码和解码JSON数据。 其中两个主要的函数是 json.dumps() 和 json.loads()。1.json.dumps将一个Python数据结构转换为JSON:import jsondata = {‘name’ : ‘myname’,‘age’ : 100,}json_str = json.dumps(data)2.json.loads将一个JSON编码的字符串转换回一个Python数据结构:data = json.lo
2021-01-05 16:58:52
129
原创 一篇搞懂python文件读写操作(r/r+/rb/w/w+/wb/a/a+/ab)
关于文件操作的几种常用方式,网上已有很多解说,内容很丰富,但也因此有些杂乱复杂。今天,我就以我个人的学习经验写一篇详细又易懂的总结文章,希望大家看完之后会有所收获。一、核心功能‘r’:只读。该文件必须已存在。‘r+’:可读可写。该文件必须已存在,写为追加在文件内容末尾。‘rb’:表示以二进制方式读取文件。该文件必须已存在。‘w’:只写。打开即默认创建一个新文件,如果文件已存在,则覆盖写(即文件内原始数据会被新写入的数据清空覆盖)。‘w+’:写读。打开创建新文件并写入数据,如果文件已存在,则覆盖写
2020-12-13 22:56:08
203
原创 python 服务器 搭建环境
搞一套自己的usr以及bash_profile以及Python虚拟环境等等1、创建Python虚拟环境参考这个:http://blog.youkuaiyun.com/a731062834/article/details/71380390使用 conda create -n your_env_name Python=X.X(2.7、3.6等) anaconda 命令创建python版本为X.X、名字为your_env_name的虚拟环境。your_env_name文件可以在Anaconda安装目录envs文件下找到
2020-12-07 22:30:02
401
原创 linux无root权限时,在自己anaconda目录下安装python包
linux无root权限时,在自己anaconda目录下安装python包查看Python路径whereis python此命令将会列出系统所安装的所有版本的Python的路径写python3.7
2020-12-07 21:52:32
197
原创 NOVA与ANCOVA的区别
NOVA与ANCOVA的区别明确回归(regression),方差分析(ANOVA),协方差分析(ANCOVA)的区别。回归是基于一个或多个连续型变量来预测另一个连续型变量的统计模型。ANOVA基于一个或多个分类变量来预测另一个连续型变量的统计模型。可以看出主要区别是变量类型,如果你只有一个分类变量且是二分类变量,就可以用t-test。如果是三个或以上的分类变量可以用ANOVA。举个例子,如果想用母亲的年龄作为预测变量来预测哺乳时间,可以用回归模型。如果想用母亲的婚姻状况(单身,结婚,离异)来预测
2020-11-18 16:03:06
1566
原创 SPM批量将功能项配准到结构像和MNI
petmni.mglobal sub filelistpathname='C:\Users\86191\Desktop\AD数据整理';filelist=dir(pathname);filelist=filelist(~ismember({filelist.name},{'.','..'}));for i=1:length(filelist) sub=filelist(i).name;% List of open inputsnrun = 1; % enter the numb
2020-11-10 10:19:50
1646
原创 批量移动文件夹到对应文件夹
import osimport shutilimport copyimport pathlibsource_path = os.path.abspath(r’G:\ruijin\AD128~’)source_path = os.path.abspath(r’C:\Users\86191\Desktop\beifen’)target_path = os.path.abspath(r’E:\ruijinbold’)filelist = os.listdir(source_path);for fi
2020-09-14 19:38:41
3694
原创 批量获取文件夹名字
1、首先我们在我们需要提取文件名的文件夹中新建一个文本文档 ,无论我们想要提取哪个文件夹的名字,我们就在相应的文件夹中新建一个文本文档就可以了。2、再新建的文档里写入“dir ./b>目录清单.txt”3、然后把新建的文本文档的后缀txt,改为bat,系统会提示他被修改之后不可用,但是不用担心它的提示,这是一个正常的提示,点击确定按钮就可以了。4、运行就出来结果了。...
2020-07-25 09:59:29
316
原创 dicom批量转化为nii文件
sudo apt install mricronapt install dcm2niixfor sub in AD128 AD129dodcm2niix -o /home/yunpengzhang/wanqing/nii/sub−zn/home/yunpengzhang/wanqing/dicom/{sub} -z n /home/yunpengzhang/wanqing/dicom/sub−zn/home/yunpengzhang/wanqing/dicom/{sub}done
2020-07-25 08:59:11
2150
原创 Freesurfer安装
这里写自定义目录标题安装:1.解压 sudo tar -zxvf freesurfer-linux-centos8_x86_64-7.1.0.tar.gz2.安装tcsh (if not), 输入:sudo apt-get install tcsh; 完成后输入tcsh,不报错的话就没问题了。3.配置环境变量:输入:sudo gedit /etc/profile,在最后一行加入:export FREESURFER_HOME=/home/yunpengzhang/wanqing/frees
2020-06-27 10:28:40
734
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人