09 2019 档案

摘要:咳咳,直接进入正题吧。 自增自减(++/--),以及赋值语句,还有逗号表达式都是在C/C++中常见的运算符或表达式。 熟悉C/C++的小伙伴们都知道,在C/C++中: 自增自减(前缀/后缀)运算符将实现对变量值的 加1/减1; 类似 x = 0; ++x;的语句会使最终 x 的值为1 赋值语句将所赋 阅读全文
posted @ 2019-09-19 20:34 _程序兔 阅读(2647) 评论(0) 推荐(0) 编辑
摘要:算法每日精进,offer!offer!offer! 给定一个包含,0,1,2,......,n 中 n 个数的序列,找出 0 - n中未出现的序列中的那个数。 如: 输入:[3, 0, 1] 输出:2 输入:[8, 5, 4, 6, 7, 1, 0, 2] 输出:3 方法一:对该序列排序,并遍历数组 阅读全文
posted @ 2019-09-18 23:10 _程序兔 阅读(304) 评论(0) 推荐(0) 编辑
摘要:题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 有一个很容易理解的方法就是直接排序,如果该数字存在则中间的位置就是该数字。时间 阅读全文
posted @ 2019-09-18 22:15 _程序兔 阅读(186) 评论(0) 推荐(0) 编辑
摘要:牛客上面一道题,闲来无事做做陶冶情操。 这一陶冶还真的陶冶出了骚操作 看一下题目吧: 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 OK,不能用循环,那就用递归,不能用if,那就利用逻辑短路! 代码: 阅读全文
posted @ 2019-09-17 09:31 _程序兔 阅读(332) 评论(0) 推荐(0) 编辑
摘要:元组(tuple)元组不能被修改 定义: tuple1 = () tuple2 = (1,) tuple3 = (1, 2.1, "adf") 注意: 定义单个元素时最后的 逗号分隔符不能省,如 >>> tuple2 = (1)>>> type(tuple2)<class 'int'> 也可以不加圆 阅读全文
posted @ 2019-09-15 20:38 _程序兔 阅读(166) 评论(0) 推荐(0) 编辑
摘要:1.列表分片(Slice) listname[start : end] start 默认值0, end 默认值 len(listname) 实例: 列表拷贝 listname1 = listname[:] (相当于c++深拷贝) listname2 = listname (相当于c++浅拷贝) 2. 阅读全文
posted @ 2019-09-15 20:19 _程序兔 阅读(580) 评论(0) 推荐(0) 编辑
摘要:remove()参数为列表元素,若在列表中,删除,不在则报错 如: pop()不带参数时默认删除列表的末尾元素并返回该元素,带参数时该参数为列表元素的下标值 不带参数: 以下标为参数: del 后面可跟列表名,可跟列表元素,跟列表名直接解除该名称与列表的引用关系,跟列表元素则删除对应列表元素 要区分 阅读全文
posted @ 2019-09-14 13:42 _程序兔 阅读(2115) 评论(0) 推荐(0) 编辑
摘要:append(),extend(), insert()都是列表操作中常用的插入函数。其中前两个均接收一个参数,并插入到列表尾部。最后一个接收两个参数,将参数2插入到参数1之前。 本文主要讨论append()和extend()的区别。 这两者都是插入函数,但是不同的是,append()的参数被视为对象 阅读全文
posted @ 2019-09-14 13:05 _程序兔 阅读(52350) 评论(0) 推荐(2) 编辑
摘要:python range() 函数可创建一个整数列表,一般用在 for 循环中。 range()函数有三个参数,分别是start, stop和step。准确的说range()函数将返回一个从start到stop,步长为step的整数序列的对象。 help(range) >>> Return an o 阅读全文
posted @ 2019-09-14 12:02 _程序兔 阅读(2644) 评论(0) 推荐(0) 编辑
摘要:看一道C++面试题: 给出下述代码,分析编译运行的结果,并提供3个选项: A.编译错误 B.编译成功,运行时程序崩溃 C.编译运行正常,输出10 class A { private: int value; public: A(int n){ value = n;} A(A other){ value 阅读全文
posted @ 2019-09-10 22:02 _程序兔 阅读(2111) 评论(0) 推荐(0) 编辑
摘要:这周真的是恶补了链表的一些操作,虽然至今还没有补完,emmm 感谢博客园的首页推送,诞生了一个访问量上百的博客(太惨了,这居然是我访问量第一次破百) 贴链接 1.单向链表翻转,就地逆置与递归翻转(无表头结点) https://www.cnblogs.com/GuoYuying/p/11455844. 阅读全文
posted @ 2019-09-08 22:07 _程序兔 阅读(205) 评论(0) 推荐(0) 编辑
摘要:题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5 这个算法自己在牛客上编辑通过后又百度查了一下其他人的做法,发现大家都是用了两层循环来解决,我还是比较喜欢一遍跑,自己 阅读全文
posted @ 2019-09-08 21:46 _程序兔 阅读(314) 评论(0) 推荐(0) 编辑
摘要:输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 结点结构体如下: 这是一道剑指offer上的题目。下面看一下解析吧。 在做这道题之前 阅读全文
posted @ 2019-09-06 21:49 _程序兔 阅读(599) 评论(0) 推荐(0) 编辑
摘要:题目:输入两个单调递增的链表pHead1和pHead2,输出两个链表合成后的链表,需要合成后的链表满足单调不减规则 方法一:非递归合并 两个指针分别从链表头开始,以其中一个链表为基准链,将另一个链表结点不断插入到基准链的适当结点之前。 这里以 p = pHead1, q = pHead2; 并且以 阅读全文
posted @ 2019-09-05 13:44 _程序兔 阅读(461) 评论(0) 推荐(0) 编辑
摘要:void strcpy(char* strDest, char* strSrc) { while((*strDest++ = *strSrc++) != '\0'); } 看上面这段代码,只有一条语句,当然把代码放在这里不是为了展示编程技巧,而是想要说一下这段简短的代码中会出现的内存问题。(先谢组长 阅读全文
posted @ 2019-09-03 21:51 _程序兔 阅读(494) 评论(0) 推荐(0) 编辑
摘要:最近在看链表,今天刷到一道链表的反转题,链表反转可以说是基础操作,但是可提供的方案也有很多,简单通过了该题后又学习了一下递归反转,现在把三种方法都公开出来做一个总结。 1.就地逆置 2.单参数的递归逆置 3.双参数的递归逆置 一、就地逆置 方法:头插。 由于这里是不带表头结点的单向链表,所以头插会稍 阅读全文
posted @ 2019-09-03 21:35 _程序兔 阅读(1392) 评论(0) 推荐(0) 编辑
摘要:最近发现在deepin终端下载软件包时速度简直是慢到不可饶恕,最快速度不上20KB/s,哭了,这要下载个几百KB的还能忍,稍微下载个百内MB的包就得等1-2小时,这咋行! 在网上查了几篇博客后,终于找到了解决办法,其实只需要重新配置一下软件源就可以。 可以查看/etc/apt/sources.lis 阅读全文
posted @ 2019-09-01 15:37 _程序兔 阅读(8549) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示