自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 资源 (1)
  • 收藏
  • 关注

原创 Too many open files问题的处理

项目针对客户高并发、高可用需求,开发了一个网关服务。之所以没有使用Nginx等做负载均衡,是因为业务逻辑需要根据每个节点的任务队列情况,分配新的请求。后来找到一篇文章,说supervisor托管的服务会默认配置打开的句柄数量是1024,查看 /proc/进程ID/limits 发现果然网关进程的最大句柄数是1024。然后重启supervisor服务:systemctl restart supervisord,使配置生效。通过以下命令查看open files设置,发现是65535,已经是最大值了。

2022-12-27 11:24:42 286

原创 联通光猫+路由器配置IPv6流程

光猫设置通常情况下,家用宽带的拓扑结构是:光猫(调制解调器+拨号+路由转发)——无线路由器(充当交换机和无线AP)——主机。在这样的情况下,光猫承受了本不该它承受的负担,又当爹又当妈;而无线路由器沦为了无线信号发射器,本来擅长的路由转发功能完全没有派上用场。因此,不管是否配置IPv6,都建议先把光猫桥接打开,用路由器进行拨号。本文以联通宽带为例。联通光猫的管理地址一般是:http://192.168.18.1/cu.html用户名和密码都是:CUAdmin登录后,点击基本配置-上行线路配置,先查

2020-12-10 00:21:04 76026 3

原创 iOS/iPadOS上outlook.com账户备忘录的问题

最近新换了iPhone,但是在系统设置里登录了outlook.com账户后,却找不到同步备忘录的开关。研究了一番终于找到解决方案:在添加账户时,选择Exchange方式登录。然后做如下设置:服务器:outlook.office365.com密码:Microsoft应用密码,不是登录时的密码,而需要在Microsoft账户设置-安全设置-应用密码-创建新的应用密码(https://account.live.com/proofs/AppPassword?mkt=zh-cn)得到一个16位

2020-12-09 23:25:54 1881

原创 nginx 配置访问二级目录、同端口强制跳转https

某站点 abc.com:8080 ,下有两个子站点。子站点首页在物理机上的绝对路径分别为:/var/www/html/siteA/page/index.html/var/www/html/siteB/view/login.html希望通过 abc.com:8080/siteA 和 abc.com:8080/siteB 的地址跳转到对应的子站点首页。同时,希望访问 http://abc.com:8080/xxx 时,强制跳转同端口的 https 。server { listen

2020-09-13 10:07:51 935

原创 LeetCode 231. Power of Two (算法,计算二进制数中1的位数)

输入一个数,判断其是否为2的幂。利用STL的bitset模板直接求解。

2017-06-01 20:51:50 388

原创 LeetCode 326. Power of Three (算法,换底公式)

输入一个整数,判断其是否为3的幂。思路:数学上要判断一个数n是否是3的乘幂,就是判断log3(n)是否为整数。但是C++里没有log3()这个函数,所以使用换底公式:

2017-06-01 20:30:40 375

原创 LeetCode 202. Happy Number (迭代,各位平方和)

输入一个数,判断是否是happy number。happy number的定义是:对于一个数字,求各位的平方和,然后继续以上过程,如果中间结果是1则是happy number;如果陷入死循环,则不是happy number。思路:按照步骤逐位计算平方再求和。当n迭代到个位数时,如果是1或7则返回true,否则返回false。

2017-06-01 20:00:32 931

原创 LeetCode 405. Convert a Number to Hexadecimal (进制转换,移位运算)

输入一个整数,输出其十六进制表示的字符串。负数使用补码表示。思路:用十进制的15(二进制的1111)作为掩码,获取最低的4位,直接查表映射成十六进制。然后右移4位,进行下次映射。在右移位时,注意要转换成无符号整数,这样移位时才能补0,否则将添加符号位。

2017-06-01 16:37:17 439

原创 LeetCode 415. Add Strings (大数加法,字符串处理)

输入两个字符串格式的非负整数,输出它们的和。思路:首先将两个整数用0补齐到相同长度,然后计算本位和、进位。注意最后一次循环结束后,判断是否存在进位,如果存在进位,需要在结果前补1。

2017-06-01 16:02:10 2113

原创 LeetCode 551. Student Attendance Record I (边界处理)

输入一串字符,如果A的总数大于等于2或连续出现3个或以上L,则返回false;否则返回true。思路:手动判断前两个字符是否为A,然后从第3个字符开始用循环判断第i-2,i-1,i个字符是否为L,以及当前字符是否为A。

2017-05-31 23:08:27 189

原创 LeetCode 541. Reverse String II (字符串翻转)

输入字符串s和正整数k,对于每2k个字母,将其中前k个字母翻转。最后如果剩余字母少于k个,则将其全部翻转;若多于k个,则将前k个翻转,其余不变。思路:利用void reverse(str.begin(),str.end())函数直接原位翻转,若要翻转到其他变量,可使用str2.assign(str.rbegin(), str.rend())函数。

2017-05-31 22:36:53 318

原创 LeetCode 260. Single Number III (数组查重)

输入一组整数,找出其中只出现一次的数,其余数都出现两次。本题和136题(http://blog.csdn.net/hiroshiten/article/details/72637489)的区别在于,136题有且只有一个单独的数,本题可以有零个到多个。思路:将数组排序,然后比较相邻的两个数是否相同。注意只有两个数且两个数不相同的情况。

2017-05-27 20:53:42 449

原创 LeetCode 404. Sum of Left Leaves (二叉树,递归)

输出二叉树左叶子节点的和。思路:判断叶子节点的方法是,对于一个节点A,如果其左孩子和右孩子都不存在,则节点A是叶子节点。

2017-05-27 16:15:24 231

原创 LeetCode 530. Minimum Absolute Difference in BST (二叉树、递归)

输入一个二叉查找树(BTS),输出其中两个节点之差的最小值。

2017-05-27 14:40:02 265

原创 LeetCode 553. Optimal Division (除法划分,算法)

给一组整数,输出如何添加括号和除号使得计算结果最大。

2017-05-25 22:24:59 1329

原创 LeetCode 338. Counting Bits(计算二进制数中1的位数)

输入一个整数n,返回从0到n之间的n+1个数的二进制表示各自包含1的个数。参考461题(http://blog.csdn.net/hiroshiten/article/details/72545807),利用n&(n-1)能够去掉n中最右侧一个1的性质,n包含1的个数等于n&(n-1)包含1的个数加1。

2017-05-25 22:01:45 458

原创 LeetCode 419. Battleships in a Board (算法)

输入一组由‘X’和‘.’组成的矩阵,X代表船,1xN或Nx1艘船能组成一个舰队,舰队互不相邻(由点隔开),求舰队数量。

2017-05-25 21:46:14 397

原创 LeetCode 537. Complex Number Multiplication (复数乘法,string转int)

输入两个复数(a+bi的形式),输出其乘积。思路:根据加号确定实部和虚部的分界,利用int atoi(str.c_str()) 函数进行string到int的转换。

2017-05-25 21:24:57 450

原创 LeetCode 217. Contains Duplicate (vector查重)

输入一组整数,查找其中是否包含重复元素。思路:利用unique函数和erase函数,比较去重之后的长度是否变化。如果有变化,说明有重复元素。

2017-05-25 16:27:31 723

原创 LeetCode 409. Longest Palindrome (算法、回文序列)

输入一组字母(区分大小写),判断由其子集组成的回文序列最大长度。

2017-05-24 20:04:07 381

原创 LeetCode 169. Majority Element (数组的主要元素、摩尔投票算法)

输入一个数组,找到其中的主要元素(主要元素的个数大于n/2向下取整)。思路①将数组排序后,位于n/2向下取整位置的即为主要元素。思路②Moore's voting algorithm: 不断删去数组中两个不同的数,直到最后剩下的数都相同,即为主要元素。

2017-05-24 19:25:30 490 2

原创 LeetCode 387. First Unique Character in a String (查重、计数器)

输入一组小写字母,找到其中第一个不重复的字母的索引号,如果找不到则返回-1。思路:为26个字母设置计数器数组,然后按照s的顺序找到第一个计数器值为1的字母。

2017-05-24 19:02:11 171

原创 LeetCode 171. Excel Sheet Column Number (字符串、进制转换)

输入一组大写字母,代表Excel里的列序号,将其转换成十进制数。(26进制转十进制)

2017-05-24 18:46:56 205

原创 LeetCode 122. Best Time to Buy and Sell Stock II (算法)

输入一组数,代表每日股价。可以多次买入、卖出,每次必须全仓操作。计算最大收益。思路:当日比前一日上涨时卖出(累加收益);下跌或持平时买入(不累加收益)。

2017-05-24 17:11:56 198

原创 LeetCode 455. Assign Cookies (游标)

输入两个正整数数组g和s,使得满足s[i]>=g[j]的pair数最多,求这个pair数。思路:先将两个数组降序排序,为g和s分别设置游标,当满足s[i]>=g[j]时移动两个游标并计数,否则移动g游标。

2017-05-24 11:15:44 168

原创 LeetCode 167. Two Sum II - Input array is sorted (夹逼法)

输入一组整数(升序排列)和一个整数,找到数组中相加等于这个整数的两个数的序号。有且只有一组解。

2017-05-23 21:48:45 337

原创 LeetCode 492. Construct the Rectangle (算法)

输入一个正整数n,将其拆成两个正整数L和W的乘积,使L和W的差最小,且L>=W。思路:从根号n开始遍历,直到找到第一个能够整除n的数。

2017-05-23 21:29:02 188

原创 LeetCode 283. Move Zeroes (数组元素操作)

输入一组整数,将其中的0移到数组末尾,保持其他整数顺序不变。在同一数组内操作。

2017-05-23 18:35:20 183

原创 LeetCode 258. Add Digits (int转string)

输入一个整数,计算其各位之和,如此迭代直到和为个位数。

2017-05-23 18:19:30 235

原创 LeetCode 371. Sum of Two Integers (递归、半加器)

LeetCode 371. Sum of Two Integers (递归、半加器)

2017-05-23 17:46:08 260

原创 LeetCode 389. Find the Difference (字符串比较)

LeetCode 389. Find the Difference (字符串比较)

2017-05-23 17:20:29 264

原创 LeetCode 448. Find All Numbers Disappeared in an Array (数组查缺)

LeetCode 448. Find All Numbers Disappeared in an Array (数组查缺)输入一个长度为n的数组(元素有重复),查找[1, n]之间缺少的数。思路:用unique()函数把原数组去重,遍历其中缺少的数字。

2017-05-23 12:08:43 143

原创 LeetCode 520. Detect Capital (字符串)

LeetCode 520. Detect Capital (字符串)输入一个单词,判断是否符合大小写规则。规则:全大写/全小写/首字母大写。

2017-05-23 11:00:53 225

原创 LeetCode 136. Single Number (算法、异或)

LeetCode 136. Single Number (算法、异或)

2017-05-23 10:39:01 273

原创 LeetCode 485. Max Consecutive Ones (边界处理)

LeetCode 485. Max Consecutive Ones (边界处理)

2017-05-23 10:31:56 220

原创 LeetCode 463. Island Perimeter (算法, 矩阵遍历)

LeetCode 463. Island Perimeter (算法, 矩阵遍历)输入一个矩阵,1代表陆地,0代表水,计算岛屿的周长。思路:若不考虑每块陆地的相邻条件,则一块陆地的周长为4。两块陆地相邻,则周长减少2。逐个元素遍历矩阵,查找每个元素左侧、上方是否有相邻的1(两元素相乘为1)。

2017-05-23 09:39:19 799

原创 LeetCode 412. Fizz Buzz (int转string)

LeetCode 412. Fizz Buzz (int转string)使用string to_string(int)函数。

2017-05-20 21:27:17 411

原创 LeetCode 575. Distribute Candies (元素去重)

LeetCode 575. Distribute Candies (元素去重)用sort()和unique()函数对vector中的元素去重

2017-05-20 19:54:33 204

原创 LeetCode 557. Reverse Words in a String III (字符串翻转)

LeetCode 557. Reverse Words in a String III (字符串翻转)按单词翻转字符串。要点在\0和size()的判断和处理,以及最后的空格的处理。

2017-05-20 17:32:26 248

原创 LeetCode 476. Number Complement (按位取反)

LeetCode 476. Number Complement (按位取反)将原数与各位都是1的数做异或运算。

2017-05-20 16:00:11 463

OpenGL实例编程精粹 随书光盘源码

《OpenGL实例编程精粹》2010年5月第一版 随书光盘源码

2014-05-18

空空如也

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

TA关注的人

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