自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 A分支一条commit提交到B分支

问题描述:分支A、分支BA分支代码已经commit想要将这条commit同步提交到B分支解决办法:1、首先切换到A分支,查看这次提交的记录的commitID,例如7fc28b0b3e63b90ffc36cd22144a565fdc424005git checkout Agit log 或者sourcetree查看本次提交,右键选择复制SHA-1到剪切板同样可以获得commitID2、切换到B分支git checkout B3、重新提交到B分支上git cherry-pick 7

2020-07-31 16:53:58 462

原创 修改git已提交内容的用户名和邮箱

为改变已经提交的 commit 的用户名和/或邮箱地址,你必须重写你 Git repo 的整个历史。注意:执行这段脚本会重写 repo 所有协作者的历史。完成以下操作后,任何 fork 或 clone 的人必须获取重写后的历史并把所有本地修改 rebase 入重写后的历史中,请谨慎操作。使用脚本改变你 repo 的 Git 历史我们写了一段能把 commit 作者旧的邮箱地址修改为正确用户名和邮箱的脚本。1.打开终端2.复制粘贴脚本,并根据你的信息修改以下变量OLD_EMAILCORRECT_

2020-07-24 15:05:27 855

原创 LeetCode112.路径总和

/** * LeetCode112.路径总和 * * 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。 * * 说明: 叶子节点是指没有子节点的节点。 * * 示例: * 给定如下二叉树,以及目标和 sum = 22, * * 5 * / \ * 4 8 * / / \ * 11 1

2020-07-07 15:16:58 154

原创 LeetCode 522. 最长特殊序列 II

/** * 522. 最长特殊序列 II * 给定字符串列表,你需要从它们中找出最长的特殊序列。 * 最长特殊序列定义如下:该序列为某字符串独有的最长子序列(即不能是其他字符串的子序列)。 * 子序列可以通过删去字符串中的某些字符实现,但不能改变剩余字符的相对顺序。 * 空序列为所有字符串的子序列,任何字符串为其自身的子序列。 * 输入将是一个字符串列表,输出是最长特殊序列的长度。如果最长特殊序列不存在,返回 -1 。 ...

2020-05-15 17:39:25 141

原创 521、最长特殊序列 Ⅰ

/** * 521、最长特殊序列 Ⅰ * 给你两个字符串,请你从这两个字符串中找出最长的特殊序列。 * 「最长特殊序列」定义如下:该序列为某字符串独有的最长子序列(即不能是其他字符串的子序列)。 * 子序列 可以通过删去字符串中的某些字符实现,但不能改变剩余字符的相对顺序。空序列为所有字符串的子序列,任何字符串为其自身的子序列。 * 输入为两个字符串,输出最长特殊序列的长度。如果不存在,则返回 -1。 * *...

2020-05-15 11:19:40 274

原创 LeetCode5、最长回文子串

/** * 5、最长回文子串 * * 给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为1000。 * 示例 1: * 输入: "babad" * 输出: "bab" * 注意: "aba" 也是一个有效答案。 * * 示例 2: * 输入: "cbbd" * 输出: "bb" */ /** * 解法 1: 暴力破解 * 暴力求解,列举所有的子串,判断是否为回文串,保存最长的回文串。 */ public boolean

2020-05-14 14:56:50 94

原创 LeetCode1297.子串的最大出现次数

题目:给你一个字符串 s ,请你返回满足以下条件且出现次数最大的 任意 子串的出现次数:子串中不同字母的数目必须小于等于 maxLetters 。子串的长度必须大于等于 minSize 且小于等于 maxSize 。示例 1:输入:s = “aababcaab”, maxLetters = 2, minSize = 3, maxSize = 4输出:2解释:子串 “aab” 在原字符...

2020-01-17 17:59:43 429

原创 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。示例 1:输入:[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]func reverseString(_ s: inout [Character]) { ...

2020-01-09 16:51:10 4954

原创 给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。

给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。思路:1、首先两层循环是不可避免的,用来遍历字符串开头和结尾的下标。2、从第一层循环内部来看,实质上是每次找出以当前节点为终点的满足条件的最大长度3、如果在内部循环时发现某节点和当前外层节点字符一样,那么意味着下次可以以这个节点后一个为起点。这一点需要考虑清楚。 func lengthOfLongestSubstring(...

2020-01-09 16:48:11 233

原创 React Native开发环境的配置

ReactNative开发环境的配置

2017-08-17 20:54:36 844

原创 对称加密、非对称加密、数字签名

对称加密、非对称加密、数字签名、数字证书

2017-08-03 14:38:04 2130

原创 层次遍历二叉树

层次遍历二叉树,即每一层从左到右遍历二叉树,而队列是先进先出的顺序,这里我们使用双端队列实现层次遍历二叉树。

2017-07-21 16:14:05 496

原创 LintCode删除排序链表中的重复数字 II - Java

LintCode删除排序链表中的重复数字 II - Java

2017-07-19 22:05:51 281

原创 判断一个单链表是否有环,若有环,求进入环中的第一个节点

判断单向链表是否有环,可以采用快指针与慢指针两个指针的方式来解决。即定义一个快指针fast和一个慢指针slow,使得fast每次跳跃两个节点,slow每次跳跃一个节点。如果链表没有环的话,则slow与fast永远不会相遇(这里链表至少有两个节点);如果有环,则fast与slow将会在环中相遇。判断出链表有环以后,则需要算出进入环的第一个节点。

2017-07-19 17:23:08 1278 1

原创 多线程NSThread、NSOperation、GCD

Mach是第一个以多线程方式处理任务的系统,因此多线程的底层实 现机制是基于Mach的线程开发中很少用Mach级的线程,因为Mach级的线程没有提供多线程的基本特征,线程之间是独立的开发中实现多线程的方案 •OC的NSThread •C语言的GCD接口(性能最好,代码更精简) •OC的NSOperation和NSOperationQueue(基于GCD)GCD 内部实现1> iOS和

2017-07-03 19:05:15 347

原创 iOS10下在UIWebView加载页面, WF: _WebFilterIsActive returning: NO

UIWebView加载的网址链接是我们后台给的一个H5的链接, 但是我们发现在iOS9系统上可以正常加载网页内容, 在iOS10系统上却无法加载, 会出现以下Log信息:WF: _userSettingsForUser mobile: {filterBlacklist = ();filterWhitelist = ();restrictWeb = 1;useContent

2017-04-21 11:04:03 8813

原创 UIBezierPath基础篇

由于项目中要加入一个类似于购物车的抛物线动画的需求,开始研究了下贝塞尔曲线的相关内容,首先了解下UIBezierPath基础。UIBezierPath基础使用UIBezierPath类可以创建基于矢量的路径,这个类在UIKit中。此类是Core Graphics框架关于path的一个封装。使用此类可以定义简单的形状,如椭圆或者矩形,或者有多个直线和曲线段组成的形状。

2016-12-09 15:48:14 365

原创 iOS下OC与JS的交互(WKWebview-MessageHandler实现)

在开发过程中,iOS 中实现加载 web 页面主要有两种控件,UIWebView和WKWebview,两种控件对应具体的实现方法不同。

2016-12-09 15:02:51 7282

原创 iOS OC与JS的交互(WebViewJavascriptBridge实现)

在开发的过程中,我们会遇到原生app与web的交互,除了用WebView加载HTML5文件显示外,还可能需要和WebView进行交互,例如点击WebView上面的按钮调用原生OC的函数方法,上一章总结了JavaScriptCore的用法,这一章我们来学习另一种方法WebViewJavascriptBridge这个开源项目。

2016-12-08 19:40:07 512

原创 iOS OC与JS的交互(JavaScriptCore实现)

iOS原生应用和web页面的交互有iOS7之后的JavaScriptCore、拦截协议、第三方框架WebViewJavaScript。

2016-12-08 19:13:35 717 1

原创 iOS开发直播app(播放篇)

在开发一款直播app的过程中,会用到视频直播的框架,这里用的是ijkplayer这个开源框架,基于ffmpeg,支持Android和iOS等不同平台。下面就开始详细讲一下在iOS项目中如何集成ijkplayer框架。

2016-12-08 18:04:57 515

原创 iOS开发下载、断点续传-NSURLConnection、NSURLSession

最近在研究NSULRSession,顺道总结了NSURLConnection与NSULRSession区别与联系,仅供交流学习,欢迎各位大神指正。NSURLConnectionNSURLConnection指的是一组构成Foundation框架中URL加载系统的相互关联的组件:NSURLRequest,NSURLResponse,NSURLProtocol,NSURLCache。

2016-12-05 18:40:40 415

原创 iOS开发直播app-美颜滤镜GPUImageBeautifyFilter

随着各种各样的直播app的爆火,实时美颜滤镜的需求也越来越多。下面将主要介绍实现美颜滤镜的原理和思路,原理可以移步看下GPUImage原理,本文主要是GPUImageBeautifyFilter美颜滤镜的实现。美颜只是不同滤镜组合起来的效果,实际上美颜也是一种滤镜,只不过它组合了各种需求的滤镜,例如磨皮、美白、提高饱和度、提亮之类的。

2016-12-05 18:05:23 1963 1

原创 iOS开发直播app(GPUImage原理)

最近在学习图像处理相关的内容,看了GPUImage的源码,查阅了相关资料,收集了许多人博客的基础上做出了整理,再次感谢给博主!GPUImage 是一个开源的基于GPU的图片或视频的处理框架,其本身内置了多达120多种常见的滤镜效果,并且支持照相机和摄像机的实时滤镜,并且能够自定义图像滤镜。

2016-12-05 17:39:45 456

原创 iOS开发直播app推流

基于RTMP协议主要有两种封装库来实现推流:1、FFmpeg推流(Mac上搭建nginx+rtmp直播服务器)http://www.jianshu.com/p/a0397c98d9072、LFLiveKit推流:FFmpeg集成工程中比较麻烦,相对来说LFLiveKit在工程中集成则更方便一点,重要的是对于新手来说包含采集、美颜、推流封装模块,可以直接上手使用。

2016-12-05 17:16:11 1317

原创 iOS开发直播app(基础篇)

iOS开发直播app流程 直播app流程简单的流程:采集->滤镜处理->编码->推流->CDN分发->拉流->解码->播放

2016-12-05 16:57:17 489

原创 Mac上搭建nginx+rtmp直播服务器

Mac上搭建nginx+rtmp直播服务器

2016-11-15 17:04:35 414

原创 FMDB/SQLCipher数据库加密

在iOS开发过程中经常需要用到SQLite来存储数据,由于Apple的沙盒机制,我们App的数据存储在沙盒里面,一般情况下无法拿到数据,但是iOS管理软件iFunBox可以读取到应用程序沙盒里面的文件,因此为了保证数据的安全性,我们需要对数据库进行加密。数据库加密有两种方式:1.对所有数据进行加密2.对数据库文件加密

2016-11-09 10:48:31 1123

原创 使用CSS设计布局

CSS是一种Web页面布局工具,通过CSS我们可以按自己的想法定制Web页面布局。有漂浮(Floating)和绝对定位(Absolute Positioning)两种基本布局定位方法。

2016-11-09 10:28:37 748

原创 了解HTML5

了解HTML5HTML5是HTML的最新版本,HTML又称为超文本语言。如今几乎所有的智能手机和平板电脑都能支持HTML5。HTML5的主要目的是用来开发更优秀、更高效的Web应用,它是在开放Web标准下开发的API和规范的。对于iOS和Android设备,都能很好的支持HTML5,因为它们运行的浏览器Safari、Chrome都基于WebKit,WebKit对HTML5有相当出色的支持。

2016-11-08 19:05:33 421

原创 OC中实例变量初始化方法,setter方法以及便利构造器的不同

OC实例变量初始化方法1.使用实例初始化方法 initWith开头的方法2.使用实例setter方法 默认初始化方法 + setName:xxx setAge:xx 3.使用构造器 类名+With…

2014-08-10 12:27:16 773 1

空空如也

空空如也

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

TA关注的人

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