![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法学习
一只特立独行的程序猿
你站在桥上看风景,看风景的人在船上看你;明月装饰了你的窗子,你装饰了别人的梦。
展开
-
【算法题解析】给定一个整形数组,存在两个不同的数只出现一次,其他数都出现两次,如何找到这两个数?
给定一个整形数组中,存在两个不同的数只出现一次,其他数都出现两次,如何找到这两个数。原创 2021-12-02 21:29:18 · 480 阅读 · 0 评论 -
【算法题解析】给定一个非空数组,除某一个元素出现一次外,其他元素出现两次,找出这个只出现一次的元素并返回
1、算法描述给定一个非空数组,除某一个元素出现一次外,其他元素出现两次,找出这个只出现一次的元素并返回。例如给定[2,2,3,3,4,4,5],则返回值为5;例如给定[4,4,5,5,-1],则返回值为-1;例如给定[4,4,5,5,0],则返回值为0;题解要求:算法具有线性复杂度,并且不适用额外存储空间。2、算法解析通过分析题目可知,其他元素都是出现两次,那么针对这出现两次的元素做什么操作可以实现将此元素从数组中剔除的操作呢?答案就是使用我们的按位操作符中的异或(^),即相同b原创 2021-03-30 10:29:57 · 731 阅读 · 0 评论 -
字符串中找出连续最长的数字串,返回找到的字符串和长度
题目描述:请一个在字符串中找出连续最长的数字串,并把这个串的长度返回;如果存在长度相同的连续数字串,返回最后一个连续数字串;注意:数字串只需要是数字组成的就可以,并不要求顺序,比如数字串“1234”的长度就小于数字串“1359055”,如果没有数字,则返回空字符串(“”)而不是NULL!样例输入abcd12345ed125ss123058789abcd12345ss54761样例输出输出123058789,函数返回值9输出54761,函数返回值5 接口说明函数原型: .原创 2020-12-27 20:41:18 · 1434 阅读 · 0 评论 -
【算法题解析---字符串反序】给定一个由单词组成的字符串,输出字符串的反序
题目1:给定一个由单词组成的字符串,输出字符串的反序。如:input:"i am a student",output:"tneduts a ma i"string str_reverse(string strSrc){ string str=strSrc; reverse(str.begin(),str.end()); return str;}题目2:给定一个由单词组成的字符串,输出字符串中单词的反序,并保证原字符串中其他内容不变。如:input:"i am a student"原创 2020-08-08 17:33:14 · 636 阅读 · 0 评论 -
【算法题解析】给定一个32bit的整数n,统计其对应的二进制数中1的个数。
1、第一种思路:对于整数n需要考虑其是是否大于0或小于0的两种情况(当然如果是0,直接返回0就好了,可以不做特殊处理)。(1)对于大于0的正数,只需要利用整数与数字1做与运算判断值是否为1,如果是则计数加1即可。然后针对整数做一次右移操作即可。循环退出的条件是整数n是否为0,如果是则退出。(2)对于小于0的负数,如果仍采用上述方式,则会进入死循环(因为负数右移时最高位补1,这样n永远不可能为0)。所以针对负整数,我们可以先将其符号为的1修改为0,这样就可以按照正整数的处理方式继续处理。此处需要特原创 2020-08-08 17:35:26 · 1101 阅读 · 0 评论