自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

颜忠贤 JoesRain

iOS开发者,希望跟大家讨教,相互学习

  • 博客(143)
  • 资源 (7)
  • 收藏
  • 关注

原创 滑动窗口大杀器,牛逼

给出两个字符串 s和 t,要求在 s中找出最短的包含 t中所有字符的连续子串。数据范围:0 > |S|,|T| \le100000>∣S∣,∣T∣≤10000,保证s和t字符串中仅包含大小写英文字母要求:进阶:空间复杂度O(n)O(n), 时间复杂度O(n)O(n)例如:S ="XDOYEZODEYXNZ"S="XDOYEZODEYXNZ"T ="XYZ"T="XYZ"找出的最短子串为"YXNZ""YXNZ".注意:如果 s中没有包含 t中所有字...

2021-11-13 09:16:07 501

原创 apple公司提出的MobileVit模型,自己根据论文复现了一下模型

import torch.nn as nndef conv3x3(in_ch: int, out_ch: int,group:int = 1, stride: int = 1): return nn.Conv2d(in_channels=in_ch, out_channels=out_ch, kernel_size=3, stride=stride, padding=1,groups=group);def conv1x1(in_ch: int, out_ch: int,group:int.

2021-10-28 08:44:43 728 1

原创 #最长无重复子数组#

这个题做起来很有感觉。之前很长时间没刷题,一个进制问题就难住了我,被鄙视了。但我知道那不是我的真实水平,只是笑了一下。被鄙视也是常有的事,哈哈,谁还没被鄙视过。给定一个数组arr,返回arr的最长无重复元素子数组的长度,无重复指的是所有数字都不相同。子数组是连续的,比如[1,3,5,7,9]的子数组有[1,3],[3,5,7]等等,但是[1,3,7]不是子数组。数据范围:0\le |arr| \le 10000000≤∣arr∣≤1000000,0 < arr_i \le 100000

2021-10-22 08:48:33 172

原创 设计LRU缓存结构,0的突破

描述设计LRU(最近最少使用)缓存结构,该结构在构造时确定大小,假设大小为 k ,并有如下两个功能1. set(key, value):将记录(key, value)插入该结构2. get(key):返回key对应的value值提示:1.某个key的set或get操作一旦发生,认为这个key的记录成了最常使用的,然后都会刷新缓存。2.当缓存的大小超过k时,移除最不经常使用的记录。3.输入一个二维数组与k,二维数组每一维有2个或者3个数字,第1个数字为opt,第2,3个数字为key,v

2021-10-14 22:25:07 87

原创 JZ27 字符串的排列,自己的解法,怎么感觉这么丝滑

输入描述:输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。示例1输入:"ab"复制返回值:["ab","ba"]复制说明:返回["ba","ab"]也是正确的 示例2输入:"aab"复制返回值:["aab","aba","baa"]复制示例3输入:"abc"复制返回值:["abc","acb","bac","bca","cab","cba"]复制示例4输入:""复制返回值:[]复制

2021-10-06 21:32:49 60

原创 几个有意思的题

1.获取某个元素索引vector<int>::iterator root_vin = find(vin.begin(), vin.end(), root->val);int rootIdx_vin = root_vin - vin.begin();先找到这个迭代器,再减去最开始的迭代器,得到索引2.获取数组的子数组使用迭代器生产子数组son = {array.begin() , array.begin() +i}二叉树的算法,适合使用递归的方法来解决,一

2021-10-04 10:21:36 88

原创 leetcode典型算法题解析(虽然简单,绝对不凡)

1588. 所有奇数长度子数组的和给你一个正整数数组arr,请你计算所有可能的奇数长度子数组的和。子数组 定义为原数组中的一个连续子序列。请你返回 arr中 所有奇数长度子数组的和 。int sumOddLengthSubarrays(vector<int>& arr) { int res = 0; for(int i = 0; i < arr.size(); i ++){ int left = i + 1, right = ...

2020-10-11 21:43:57 264

原创 巧用iOS宏定义

__attribute__((used,section...)) 把某个变量的放入特殊的section中用法:char *kChinaPYG __attribute((used, section("__DATA, ChinaPYG"))) = "ChinaPYG.CoM";char *kDllHook __attribute((used, section("__DATA, DllHook"))) = "DllHook.CoM";使用 used字段,即使没有任何引用,在Release下也不会被优化.

2020-09-29 16:35:07 279

转载 python3爬取百度图片

一.需要工具1.python32.pycharm3.谷歌浏览器注:不想深究想直接拿来用的,可以跳过操作步骤,直接看结尾说明,只要是百度图片都是共用的。二.操作步骤(1).打开浏览器,点击百度图片,并搜索,如图:(2).按F12进入控制台,依次点击Network->XHR,然后鼠标移到有图片的网页上,滑轮向下划几下,会出现acjson关键字的信息,这些就是由js控制生成的网页信息。找出两段带acjson的信息,点开Headers,找到下面的Query String Parame.

2020-09-19 14:54:02 554

转载 c++算法提速,刷题,竞赛必备

前言这两天在LeetCode上刷题的时候看见有好几个速度排名第一的代码中都有一段类似的代码,如下:static const auto io_sync_off = [](){ // turn off sync std::ios::sync_with_stdio(false); // untie in/out streams std::cin.tie(nullptr); return nullptr;}();1 2 3 4 5 6 7 8

2020-08-19 22:13:55 551

原创 swift 进程间通知和对象指针转换,定义错误码描述

//定义进程间通知回调let callback:CFNotificationCallback = {(_,_,_,rawPointer,_) in let error = NSError(domain: "closeBroadcast", code: 0, userInfo: nil) //指针转对象 let sample = Unmanaged<SampleHandler>.fromOpaque(rawPointer!).takeUnretainedValue().

2020-07-27 10:36:07 352

原创 训练East文本检测模型若干感悟

East的模型结构总的来说,真是简单。但是简单,却又好用,为旷视点赞。分别用PVANet特征提取,采用UNet结构做特征融合,最后直接输出置信度,坐标位置,和角度。虽然看起来简单,是不是训练起来也一样简单呢????不然,其实置信度是最难train的。说说我的经历。本来大家都习惯用vgg来提取特征,效果不错,偏偏又人自命不凡,比如我自己写来一个四不像的模型,大家看看。...

2020-05-04 16:31:11 1165

原创 kaggle 手写数字识别

学习最好的办法就是实践。深度学习有很多入门的数据集,手写数字数据集是其中一个代表。以Kannada-MNIST为例:我们做一个手写数字识别的程序。引入pandas,做数据预处理用的。import pandas as pd加载训练数据train_data = pd.read_csv("/kaggle/input/Kannada-MNIST/train.csv")加载测试数...

2019-09-27 11:11:21 692 1

原创 深入机器学习DroupOut原理,为啥测试的时候参数要乘以(1-DroupOut的概率)

听了台大李宏毅老师的课程,大受启发。 不过根据我的推断,老师还是讲错了。假如是2个以上的参数老师的说法就讲不通,实际情形如下:如有错误,请大家指教。...

2019-07-05 20:48:19 545

原创 美团 logan库优化,让日志循环写入,保留最新的内容

修改clogan_core.c文件clogan_write 方法if (logan_model->file_len > max_file_len) { char *filePath = malloc(strlen(logan_model->file_path)); memcpy(filePath, logan_mo...

2019-05-30 09:46:25 836 2

原创 微积分困惑,已经解决

 最近研究机器学习,发现数学还得补补。发现一个奇怪的问题。  如果使用几何求法,面积完全不一样。 由题目可以得到:圆的半径是1/2,阴影面积等于一个半圆的面积减去一个边长是√2/2的等边直角三角形的面积,再除以2,结果就是(π-2)/8,发现结果完全不一样。原来 二重积分不等于面积,而是体积。面积只是当函数值恒等于1的情况下成立。而函数为x方跟y方开根号,积分相...

2019-02-11 14:49:17 473

原创 Spring Boot 初体验

自定义项目:               用Spring Boot实现一个图书的增删改查的功能,供前端人员接口调用。1.创建项目(略过)    网上实在太多教程,无需赘述。项目groupId:com.csdnartifactId:test选择支持web,mybatis2.创建mysql数据库。我使用的是MAC,需要注意的是数据库秘密我使用的是简易的秘密,使用工具连接数据...

2018-11-30 14:07:03 167

原创 iOS 正则处理 NSString,NSAttributedString

处理字符串 NSString * regExpStr = @"(\\d{3})\\d{4}(\\d{0,4})";NSString *resultString = [self stringByReplacingOccurrencesOfRegex:regExpStr withString:@"$1****$2"];return resultString;处理属性字符串

2017-11-17 13:59:56 498

原创 修改根控制器,KVO监听单例报错

在tabbar 中使用KVO监听单例切换根控制器时程序在LIBC中报错[self addObserver:[IMAPlatform sharedInstance].conversationMgr forKeyPath:@"unReadMessageCount" options:NSKeyValueObservingOptionNew context:nil];采用通知的方式

2017-11-15 13:28:48 371

原创 代码正确情况下,mainbundle 加载文件失败

第三方添加的info.plist文件,没有包含在自己的bundle 里面,由于大家都存储在main bundle 里面,同样命名的文件会影响APP自身的info.plist,导致 main bundle 配置出错。影响加载系统文件。方法1.暴力删除第三方info.plist 文件方法2 在copy bundle文件中,删除第三方的info.plist

2017-11-15 09:57:05 820

转载 UITableView的 beginUpdates 和 endUpdates

先看Apple API Reference中对这两个方法的描述beginUpdatesendUpdates从上述描述中我们大概可以总结出四点1、beginUpdates 和 endUpdates必须成对使用2、使用beginUpdates和endUpdates可以在改变一些行(row)的高度时自带动画,并且不需要Reload row(不用调用cellForRow,仅仅需要调用heig

2017-11-10 16:38:20 925

原创 关于iOS 11 tableView自动布局懵逼的事

有同事之前设置CELL子控件对父控件约束,结果发现位置偏移了。全局加上这句话,就不懵逼了。[[UITableViewappearance] setLayoutMargins:UIEdgeInsetsZero];

2017-11-10 16:18:32 554

原创 苹果官方Toast Demo关键代码,Swift实现

func showToast(_ text: String) {label.text = textguard toast.alpha == 0 else {return}toast.layer.masksToBounds = truetoast.layer.cornerRadius = 7.5UIView.animate(withDuration: 0.25

2017-10-27 11:30:57 308

原创 自定义支持数组的表单网络请求

封装AFN的方法,默认不支持数组的表单请求+(void)postFormJava:(NSString *)url params:(NSDictionary *)params success:(void (^)(id))success failure:(void (^)(NSError *))failure{url = [url stringByAddingPercentEscapesUsi

2017-10-27 11:25:46 240

原创 深入探讨BLOCK关键结构体

每一个BLOCK都会生成一个对应的最重要的关键结构体(包含全部信息)struct __main_block_impl_0 {  struct __block_impl impl;  struct __main_block_desc_0* Desc;  int a;  __main_block_impl_0(void *fp, struct__main_block_desc_0

2017-10-27 09:55:18 728

转载 Facebook POP Demo

如果说Origami这款动效原型工具是Facebook Paper的幕后功臣,那么POP便是Origami的地基。感谢Facebook开源了POP动效库,让人人都能制作出华丽的动效。我们只需5步,便能搞定酷炫的动效。步骤1: 安装使用CocoaPods安装POP,只需要在Podfile中加入这么一行:pod 'pop', '~> 1.0'或者如果想要手动添加

2016-11-21 16:55:25 396

转载 Facebook Pop 使用指南

Pop Animation在使用上和Core Animation很相似,都涉及Animation对象以及Animation的载体的概念,不同的是Core Animation的载体只能是CALayer,而Pop Animation可以是任意基于NSObject的对象。当然大多数情况Anima“”阅读器Facebook Pop

2016-11-20 15:06:11 400

转载 iOS动效-利用CATransform3D实现翻页动画效果

从事iOS开发已经有一段时间了,之前一直忙于工作,几乎很少有时间写一些东西来对自己掌握的技术进行一下总结,现在想想,有些后悔,因为之前在遇见问题的时候或者学习新技术的时候都是在翻看他人的博客或者查看苹果的官方文档,一直是一个在行业内的“价值消耗者”,对此,我也做过深刻的反思,现在下定决心,以自己微薄的力量来贡献一些东西,也许会对他人有所帮助,希望自己不再是一名“价值消耗者”或是“观望者”,转变为一

2016-11-20 15:01:50 1995

转载 h5与App原生交互方案

H5与App原生交互,一般会是前端页面中的JavaScript与App使用的原生开发语言的交互。技术方案应能达到以下要求:在js与原生进行交互的时候能保证正常的正向调用逻辑返回,反向可以处理异步回调,因为对js来说,大部分逻辑都是回调与监听。要保证H5与Native App通讯效率高、安全性强,能有效防止通过H5页面进行App注入、中间人攻击或者钓鱼。方便测试阶段,H5嵌入到App当中,开

2016-11-20 14:59:28 3006

转载 Facebook POP 进阶指南

本文转自Kevin Blog Facebook 在发布了 Paper 之后,似乎还不满足于只是将其作为一个概念性产品,更进一步开源了其背后的动画引擎 POP,此举大有三年前发布的 iOS UI 框架 Three20 的意味。而 POP 开源后也不负 Facebook 的厚望。 POP背后的开发者是 Kimon Tsinteris, Push Pop Pres

2016-11-20 14:43:01 384

原创 奇葩问题与主线程延迟有关

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.3f * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{[MBProgressHUD hideHUD];});dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_

2016-11-08 11:19:55 543

原创 Charles

下载地址:http://download.csdn.net/download/wdd2007/94327301.支持SSL代理2.支持流量控制3.支持AJAX调试4.支持AMF调试5.支持重发网络请求6.支持修改网络请求参数7.支持网络请求的截取和动态修改8.检查html,css和rss内容是否服务w3c下载CA证书:点击help,选择ssl proxyin

2016-10-21 17:17:15 275

转载 iOS 界面 分析工具Reveal

Reveal作为分析APP UI的利器确实非常好用,用来查看任意UI布局也很方便一.模拟器进行分析  1.打开Reveal(http://revealapp.com下载)  2.打开Xcode  3.Reveal——Help——Show Reveal Library in Finder        4.Xcode——导入Reveal.framewo

2016-10-21 16:22:13 345

原创 深入了解HTTPS

1.客户端登录请求服务器时,服务器返回证书跟公钥A2.客户端验证证书有效后,随机生成AES密钥M,使用公钥A对M加密生成AES密钥N,发送给服务器。3.服务器使用私钥对AES密钥N解密得到AES密钥M,服务器返回数据时就使用AES密钥M加密4.客户端使用AES密钥M解密服务器的数据,并且使用AES密钥M对发送给服务器的数据加密5.网络断开后AES密钥M失效

2016-10-21 11:01:35 306

转载 iOS7新技术:如何使用Multipeer Connectivity

本文由郭历成[博客]翻译自nshipster中的Multipeer Connectivity一节。如果您有不错的文章欢迎投稿,可通过微博或者QQ(291864979)加入我们的翻译小组。 Multipeer connectivity是一个使附近设备通过Wi-Fi网络、P2P Wi-Fi以及蓝牙个人局域网进行通信的框架。互相链接的节点可以安全地传递信息、流或是其他文件资源,而不用

2016-09-03 11:51:10 407

转载 iOS 如何把view转成image,截屏分享/ 整个视图的分享。

问题: 长图截屏分享(超出一个屏幕的view分享)今天为了做一个类似长图截屏分享的功能,局限性再与截屏的时候,只能把当前屏幕所看见的部分给截下来,如果这个ViewController很长,不能一页显示不全,我想把这个页面分享出去,要分享全部的,完整的页面,别人看上去才有意义,除此外,用文字,用链接,都不好使,仅仅要的就是把整个view给完整的截下来,做成一张图片。 解决方案: 

2016-08-27 22:52:30 1360

转载 block 的ARC和MRC中的区别

block在ARC和MRC中的声明引用有些区别.     /**     block可以存储在栈中,也可以在堆中     默认存储在栈中,不需要管理内存     存储在堆中的block会对block进行retain操作     */    //(MRC)block在堆中时,不想对block进行retain操作,前面加__block    //(ARC)前面加__we

2016-08-27 22:45:10 1848

转载 Objective-C代码混淆

class-dump可以很方便的导出程序头文件,不仅让攻击者了解了程序结构方便逆向,还让着急赶进度时写出的欠完善的程序给同行留下笑柄。所以,我们迫切的希望混淆自己的代码。混淆的常规思路混淆分许多思路,比如:1)花代码花指令,即随意往程序中加入迷惑人的代码指令2)易读字符替换等等防止class-dump出可读信息的有效办法是易读字符

2016-08-27 21:52:08 564

转载 facebook fishhook

#import     #import     #import "AppDelegate.h"  #import "fishhook.h"    static int (*orig_close)(int);  static int (*orig_open)(const charchar *, int, ...);    void save_original_

2016-08-27 18:35:02 976

转载 method swizzling

在没有一个类的实现源码的情况下,想改变其中一个方法的实现,除了继承它重写、和借助类别重名方法暴力抢先之外,还有更加灵活的方法吗?在Objective-C编程中,如何实现hook呢?标题有点大,计划分几篇来总结。本文主要介绍针对selector的hook,主角被标题剧透了———— Method Swizzling 。Method Swizzling 原理

2016-08-27 18:05:02 435

html 上显示tif格式的图片

html 上显示tif格式的图片,需要的可以下载。

2018-10-18

优化版,腾讯IM,便于集成开发

腾讯IM集成DEMO 优化,便于集成开发,在项目中使用相当的方便。

2017-11-16

iOS 6编程实战

iOS 6编程实战

2016-08-17

iOS 5核心框架

iOS 5核心框架

2016-08-17

iOS 音频队列录音

iOS 音频队列 录音

2016-08-15

GitStack 破解

2016-06-22

仿code4app客户端

欢迎大家下载,探讨学习。初学者,所以花了我一点时间。

2014-05-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除