- 博客(35)
- 资源 (13)
- 收藏
- 关注
原创 iOS对json数据按key排序的算法
1 背景 在iOS 11以下,如果我们想要将字典数据转化成json格式,并且按key排序。可是Apple并没有给我们提供现有的API接口。 在iOS 11及以上的版本,直接调用API接口即可,如下所示方法,在options参数传入NSJSONWritingSortedKeys属性即可达到要求,它是按照字典的顺序对json的key进行排序。+ (nullable NSData *)data
2020-10-24 20:17:17 1582 1
原创 ios的UIView和UIViewController的生命周期
目的:巧妙利用UIView和UIViewController的生命周期做合适的事能够提升界面加载的流畅度1、UIVIew状态改变对应的方法调用1.1 UIView显示过程的方法调用顺序如下:willMoveToSuperview:didMoveToSuperviewwillMoveToWindowdidMoveToWindowlayoutSubviews1.2 UIView销毁过程的方法调用顺序如下:willMoveToSupervie
2020-09-21 20:00:10 618
原创 Git创建创远程库,pull项目,push项目介绍
Git创建创远程库,pull项目,push项目介绍1.在本地初始化一个文件夹作为git项目,命令:git initgit init //用"git init"初始化的版本库用户也可以在该目录下执行所有git方面的操作。需要注意点是命令:git init -baregit init -baregit init –bare”方法创建一个所谓的裸仓库,之所以叫裸仓库是因为这个仓库只保存git历史提交的版本信息,而不允许用户在上面进行各种git操作,如果你硬要操作的话,只会得到下面的错误(”Th
2020-09-21 19:56:50 338
原创 iOS的事件传递和响应机制
目的:了解事件传递过程和响应机制能够帮助处理一些手势冲突,自定义手势等问题###1、事件分类?1.1 在iOS系统中把事件分为4类事件:UIEventTypeTouches: 触摸手机屏幕事件UIEventTypeMotion:手机的摇晃和运动事件。比如摇晃手机,手机陀螺仪感应,该事件由UIKit触发的,因此它不遵守事件响应机制。UIEventTypeRemoteControl:手机远程控制事件。主要是用来接收耳机等外部设备的命令,目的是用来控制手机的多媒体。UIEventTypePresse
2020-09-21 19:54:59 348
原创 iOS绘制视图流程
目的:了解View的绘制过程,可以帮我们自定义自己的控件,解决UI界面一下问题,如刷新时机,界面卡顿等一些优化问题。问题1:什么条件下会调用layoutSubView?常见情况如下:a. 设置View的frame的时候回触发,前提是前后设置的frame不一样。b. 调用 init 方法初始化不会触发 layoutSubviews,但是是用 initWithFrame 进行初始化时,当rect的值不为CGRectZero时,也会触发。(遵守a点)c. addSubView 会触发,或者改变View
2020-09-21 19:49:41 514
原创 华为笔试题答案2019-9-7笔试第一题,跳数
import copycount = 1n = list(raw_input().split())a = [int(i) for i in n]b = list(copy.deepcopy(a[1:(len(n)//2)]))minStep=[]t =[]# 把可能要走的路径保留下来for x in b: idx = a.index(x) tem = [x] ...
2019-09-07 21:26:01 857
原创 Python写法求解华为2016笔试真题第二题,
时间限制:1秒空间限制:65536K开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。处理:1.记录最多8条错误记录,对相同的错误记录(即文件名称和行号完全匹配)只记录一条,错误计数增加;(文件所在的目录不同,文件名和行号相同也要合并)2.超过16个字符的文件名称,只记录文件的最后有效16个字符;(如果文件名不同,而只是文件名的后16个字符和行号相同,也不要合...
2019-04-09 19:49:03 1788
原创 python按照指定的列进行排序,也就是java的重写sort函数,而在python是sorted函数
一:按第一列排序,第一列相同,则按照第二列排序,从小到大。a = [[2,3],[4,1],(2,8),(2,1),(3,4)]b = sorted(a,key=lambda x: (x[0], x[1]))print(b)'''# 输出[(2, 1), [2, 3], (2, 8), (3, 4), [4, 1]]'''二、一:按第一列排序,第一列相同,则...
2018-10-29 19:52:46 714
原创 python二维list按列进行乱序,数组,按列排序
因为python的numpy库可以按行进行乱序所以我们的思路是,先把二维list转置,然后在按行乱序,最后再转置,这样就得到我们的结果。import numpy as nplabels=[[9,1,3,5], [4,5,6,8], [3,4,5,7], [9,3,2,6]]labels = np.vstack(labels).T # 转...
2018-10-18 10:56:22 3767
原创 LeetCode866. 回文素数 Python实现
分析:题目为了节省时间,若N的位数是偶数时,那么除了11其他的都不是素数,网上有其他证明。,如 1001的位数是4,那么接下来应该从10001开始,因为在1001-9999不会有素数的(这个从10001为了节省时间),具体实现N = pow(10,N的位数)+1,注意取整!import mathimport copyclass Solution: def primePalin...
2018-09-20 20:55:44 5873
原创 Leedcode 456. 132模式 Python实现
下面分析转自于:https://blog.csdn.net/nunuwode/article/details/819904262.挺巧妙的方法,从后往前遍历,将数字从大到小依次压栈,当遇到一个数比栈顶大的时候,依次弹栈,将弹出来的数赋给一个变量third,然后直到遇到栈顶的数比当前这个数大,就将这个数压栈。这样就保证了在遍历的过程中,栈里保存着最大的数,third保存着最大的数下的尽量大的数。...
2018-09-20 19:55:55 421
原创 201312-3 最大的矩形,java,CCF,C++
试题编号: 201312-3 试题名称: 最大的矩形 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在横轴上放了n个相邻的矩形,每个矩形的宽度是1,而第i(1 ≤ i ≤ n)个矩形的高度是hi。这n个矩形构成了一个直方图。例如,下图中六个矩形的高度就分别是3, 1, 6, 5, 2, 3。 请找...
2018-09-10 16:43:47 297
原创 201412-2 Z字形扫描,CCF,Java,C++
试题编号: 201412-2 试题名称: Z字形扫描 时间限制: 2.0s 内存限制: 256.0MB 问题描述: 问题描述 在图像编码的算法中,需要将一个给定的方形矩阵进行Z字形扫描(Zigzag Scan)。给定一个n×n的矩阵,Z字形扫描的过程如下图所示: 对于下面的4×4的矩阵, 1 5 3 9 ...
2018-09-10 12:26:09 285
原创 机器学习.周志华《11章特征选择与稀疏学习》嵌入式选择与L1正则化求解(LASSO),LASSO求解,11.4小节求解
如果觉得图片不清楚可以参考:https://blog.csdn.net/icefire_tyh/article/details/52254580,http://freemind.pluskid.org/machine-learning/sparsity-and-some-basics-of-l1-regularization/#ed61992b37932e208ae114be75e42a3e6...
2018-09-03 17:17:16 1384
原创 机器学习和强化学习--note
1 FA(function approximate) 函数近似2 事情还没有发生,要求这件事情发生的可能性的大小,是先验概率. 事情已经发生,要求这件事情发生的原因是由某个因素引起的可能性的大小,是后验概率.3 SVD ...
2018-08-27 21:41:56 306
原创 Python笔记
1 #functools.partial的作用就是,把一个函数的某些参数给固定住(也就是设置默认值),#返回一个新的函数,调用这个新函数会更简单。int2=functools.partial(int,base=2)2 正常的函数和变量名是公开的(public),可以被直接引用,比如:abc,x123,PI等,_xxx和__xxx这样的函数或变量就是非公开的(private),不应该被...
2018-08-27 15:01:58 111
原创 Prioritized Experience Replay中的sumTree的实现,用sumTree来存储正样本,以便随机抽取
sumTree的定义可以参考这篇论文《Prioritized Experience Replay》,下面的详细代码注释链接,在注释中有叶子节点和树的总结点的关系:https://download.csdn.net/download/song91425/10568762 import numpy as npclass Tree(object): write = 0 ...
2018-07-27 20:11:08 5843 1
原创 Tensorflow笔记
① reuse=False时,tf.variable_scope创建变量;reuse=True时,tf.variable_scope获取变量。② tf.get_variable函数不受tf.name_scope的影响II. TF中有两种作用域类型命名域 (name scope),通过tf.name_scope 或 tf.op_scope创建;变量域 (variable scop...
2018-07-19 20:28:17 181
原创 西瓜书强化学习QLearning算法与网上版本比较
西瓜书上的QLearning算法与网上的版本比较: 不同点:西瓜书上的Q(x,a)就是Q表,π(x,a)就是贪婪算法选择动作的概率,这个值对应于ε。 西瓜书上的第六行的公式和另一版本的更新值公式的区别,网上版本是下一个状态的maxQ(x',a'), 因为是求最大值,所以不需要西瓜书上的第五行和第七行代码,直接查找下一个状态x'的最大值得Q(x',a'),而西瓜书上的不...
2018-07-16 19:35:18 1370 3
原创 jaccard距离实例计算,用数字表示,用数字表示代入公式中
用数字实例,一步一步求jaccard距离,清晰易懂,保证能够理解,后面还有python源码实现这个公式
2018-05-09 20:03:59 3859 1
原创 西瓜书上朴素贝叶斯的实现,完全按照书上的步骤
注:西瓜书上的数据有错误如P152的5/8=0.375,所以代码的计算是正确的。如果读者想要“拉普拉斯修正“的源码请访问https://download.csdn.net/download/song91425/10385345 。 所谓的拉普拉斯就是避免出现概率为0的情况。import numpy as npdef load_data(filepath): ''' :a...
2018-05-01 17:23:00 3617 4
原创 Notification通知不能显示,setContentInfo()和serNumber()过时。
原因:setContentInfo()和serNumber()过时,有的安卓版本不支持他的使用。解决方法:在setContentText(text + " 你想要在setContentInfo()和serNumber()方法里设的值") ;
2018-04-10 17:27:51 1118
原创 对两组用户输入的字符串进行比较(长度自定),输出相 同字符数。
1 解题思路:首先找出字符串a和b相同的字符,保存在字符串c中,然后再与c为标准,统计出现的字符的个数。#include <stdio.h>#include <string.h>int main(){ char a[101],b[101],i; char c[101]; int j,g; printf("Input 2 strings....
2018-03-25 14:43:52 2526
原创 Python能否占满CPU,Python多线程,进程
因为Python的线程虽然是真正的线程,但解释器执行代码时,有一个GIL锁:Global Interpreter Lock,任何Python线程执行前,必须先获得GIL锁,然后,每执行100条字节码,解释器就自动释放GIL锁,让别的线程有机会执行。这个GIL全局锁实际上把所有线程的执行代码都给上了锁,所以,多线程在Python中只能交替执行,即使100个线程跑在100核CPU上,也只能用到1个核。...
2018-03-23 17:05:52 6952
原创 Python装饰器的理解
Python装饰器简单来说就是进一步封装,因为Python可以返回函数变量,所以可以对函数进行封装如:def log(func): def wrapper(*args, **kw): print('call %s():' % func.__name__) return func(*args, **kw) return wrapper#调用:@lo...
2018-03-21 10:58:32 196
原创 安卓 5.0 之后启动服务,必须是显式的,startService()。安卓不能启动服务
1.当按照正规启动不了服务的时候,可以试试以下方法: Intent intent = new Intent("com.gnss.GNSSService"); intent.setAction(GPSBOARDCONTROL);//Service能够匹配的Action intent.setPackage("com.gnss.ssserver");//应用的包名 context.start...
2018-03-19 11:51:18 3253
原创 CCF日期计算,解题思路,C++,Java
解题思路:首先判断是闰年还是平年,若是瑞年则28+1,平年28+0bool flag = n%4 ==0&& n%100 != 0 || n%400 == 0 ; if(flag){ t=1; }else{ t=0; }#include using namespace std;int main(){ int n,d,t; cin>>n>>d; if(d
2017-11-30 13:30:10 399
原创 CCF 火车购票 C++ 解题,java写
#include using namespace std;int main(){ int n,m=1,t; int j =1; int a[101],b[101]; cin>> n; for(int i=1;i<=n;i++){中 cin>>a[i]; } for(int j=0;j<=100;j++) { b[j] = 0; // 标记火车票是否已经被买了,初始化0,
2017-11-30 11:49:44 842
原创 c++,ccf,2017年9月,打酱油试题
问题描述 小明带着N元钱去买酱油。酱油10块钱一瓶,商家进行促销,每买3瓶送1瓶,或者每买5瓶送2瓶。请问小明最多可以得到多少瓶酱油。输入格式 输入的第一行包含一个整数N,表示小明可用于买酱油的钱数。N是10的整数倍,N不超过300。输出格式 输出一个整数,表示小明最多可以得到多少瓶酱油。样例输入40样例输出5样
2017-11-16 09:56:27 4602 1
原创 站在顶层分析简单工厂模式
简单工厂模式最重要一点是,实现的逻辑细节(具体类),对于用户(客户端)是不可见的。比如:我们要生产一辆具体车型(宝马x6),在客户端的时候,我们只需要传一个具体的参数给工厂类就可以,生产宝马x6的实例由工厂类给我们实例化宝马x6的这个类。 总之,客户端是不实例化。工厂类相当于中间对象,客户端通过中间对象生产具体汽车,而在客户端中只需要new 车(宝马x6), 一个车公有的接口。
2017-10-23 16:50:21 163
原创 CCF 2016 工资计算C++,Java,工资计算解题思路
#include using namespace std;int main(){ int t; cin>> t; if(t<=3500){ cout<< t ; return 0; } if((t-105)*100/97 -3500 <= 1500 ){ cout<< (t-105)*100/97 ; }else if((t-455)*100 / 90 -3500
2017-08-30 11:57:03 672
原创 ccf c++ 工资计算,这个算法个人觉得没有问题,但只能得50分,请教如何解决?
问题描述 小明的公司每个月给小明发工资,而小明拿到的工资为交完个人所得税之后的工资。假设他一个月的税前工资(扣除五险一金后、未扣税前的工资)为S元,则他应交的个人所得税按如下公式计算: 1) 个人所得税起征点为3500元,若S不超过3500,则不交税,3500元以上的部分才计算个人所得税,令A=S-3500元; 2) A中不超过1500元的部分,税率3%; 3) A中超
2017-08-27 21:33:45 1033
原创 CCF 学生排队 C++ Java
试题编号:201703-2试题名称:学生排队时间限制:1.0s内存限制:256.0MB问题描述:问题描述 体育老师小明要将自己班上的学生按顺序排队。他首先让学生按学号从小到大的顺序排成一排,学号小的排在前面,然后进行多次调整。一次调整小明可能让一位同学出队,向前或者向后移动一段距离后再插入
2017-08-27 21:21:15 610
原创 ccf c++ 分蛋糕算法
问题描述试题编号:201703-1试题名称:分蛋糕时间限制:1.0s内存限制:256.0MB问题描述:问题描述 小明今天生日,他有n块蛋糕要分给朋友们吃,这n块蛋糕(编号为1到n)的重量分别为a1, a2, …, an。小明想分给每个朋友至少重量为k的蛋糕。小明的朋
2017-08-27 21:16:22 1574
httpservlet-api,mysql-connector-java-5.0.4-bin
2018-07-27
OpenStack设计与实现第2版
2018-07-27
sumTree的实现,详细注解
2018-07-27
罗马尼亚问题,从Arad到Bucharest结果,深度优先搜索(DFS);迭代加深的搜索(IDS);A*搜索;一致代价搜索(UCS);
2018-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人