
python
文章平均质量分 61
Ego_Bai
这个作者很懒,什么都没留下…
展开
-
算法题-求带环链表中环的入口结点
[编程|20分] 链表中环的入口结点 时间限制:C/C++ 1秒,其他语言 2秒空间限制:C/C++ 32768K,其他语言 65536K题目描述 一个链表中包含环,请找出该链表的环的入口结点。思路: 已知链表带环,那么我们便不需要判断链表带环与否,而主要关注找到环入口的方法:设置两个指针(pFaster, pSlower),初始值都指向头,pSlower每次前进一步,p...原创 2018-06-07 21:12:02 · 679 阅读 · 0 评论 -
算法题-删除链表中重复的结点
[编程|20分] 删除链表中重复的结点 时间限制:C/C++ 1秒,其他语言 2秒 空间限制:C/C++ 32768K,其他语言 65536K题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5原创 2018-06-07 21:38:02 · 1517 阅读 · 0 评论 -
算法题-把数组排成最小的数
把数组排成最小的数 时间限制:1秒空间限制:32768K 算法知识视频讲解 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。思路一首先我们很容易想到全排列,但全排列时间复杂度为O(n!)。 所以在这里我们需要根据题意发现其中数学规律,然后定义一个规则...原创 2018-06-02 12:33:25 · 775 阅读 · 0 评论 -
算法题-和为S的连续正数序列
[编程题]和为S的连续正数序列 时间限制:1秒 空间限制:32768K 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列...原创 2018-06-02 12:36:27 · 357 阅读 · 0 评论 -
算法题-实现一个函数用来匹配'.'和'*'的正则表达式
1.请实现一个函数用来匹配包括’.’和’‘的正则表达式。模式中的字符’.’表示任意一个字符,而’‘表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串”aaa”与模式”a.a”和”ab*ac*a”匹配,但是与”aa.a”和”ab*a”均不匹配 思路:递归实现串中子串迭代每次分别在string 和patt中取一个字符进行匹配,如果匹配,则...原创 2018-05-30 10:15:19 · 2138 阅读 · 0 评论 -
算法题-构建乘积数组
编程题]构建乘积数组 时间限制:1秒 空间限制:32768K 给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…A[i-1]*A[i+1]…*A[n-1]。不能使用除法。 1.剑指offer上的思路: B[i]的值可以看作下图的矩阵中每行的乘积。 下三角用连乘可以很容求得,上三角,从下向上也是连...原创 2018-06-09 17:18:13 · 742 阅读 · 0 评论 -
算法题-按照左右半区的方式重新组合单链表
[编程题]按照左右半区的方式重新组合单链表 时间限制:1秒 空间限制:32768K 给定一个单链表的头部节点head,链表长度为N。 如果N为偶数,那么前N/2个节点算作左半区,后N/2个节点算作右半区; 如果N为奇数,那么前N/2个节点算作左半区,后N/2+1个节点算作右半区; 左半区从左到右依次记为L1->L2->…,右半区从左到右依次记为R1->R2->...原创 2018-06-09 18:58:13 · 776 阅读 · 0 评论 -
算法题-二叉搜索树与双向链表
[编程题]二叉搜索树与双向链表 时间限制:1秒空间限制:32768K输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。思路: 非递归版本: 二叉树的中序遍历 中序遍历中每个结点的链接# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x...原创 2018-06-09 18:59:03 · 657 阅读 · 0 评论 -
Leetcode-convert-sorted-list-to-binary-search-tree(把有序链表转为二叉搜索树)
[编程题]convert-sorted-list-to-binary-search-tree 时间限制:1秒 空间限制:32768KGiven a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST. 思路:二分查找法每次需要找到中间...原创 2018-06-10 20:15:10 · 949 阅读 · 0 评论 -
基于TCP协议的Socket网络编程( )
TCP编程Socket是网络编程的一个抽象概念。通常我们用一个Socket表示“打开了一个网络链接”,而打开一个Socket需要知道目标计算机的IP地址和端口号,再指定协议类型即可。今天我们要在Python中,基于TCP协议进行Socket网络编程客户端大多数连接都是可靠的TCP连接。创建TCP连接时,主动发起连接的叫客户端,被动响应连接的叫服务器。举个例子,当我们在浏览器中...原创 2018-07-01 12:01:51 · 4393 阅读 · 0 评论 -
Python中with的用法
之前再遇到with语句在文件操作上的用法非常巧妙,以前不太熟悉,看的时候也产生一些困惑With语句是什么?有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,Python的with语句提供了一种非常方便的处理方式。其中一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后关闭文件句柄。 如果不用with语句,代码如下:file = open("/tmp/...原创 2018-07-01 12:03:29 · 91346 阅读 · 19 评论 -
笔经-腾讯2018暑期实习生-数据分析岗笔试经历
发现今年虽然很多公司有了数据分析岗位面向本科生开放,但几乎数据分析师的实习笔试都没有考编程,注意是都没有考!这也给了我们一些启发,也试说明现在的数据分析岗位职能方向更细化。不定项选择(每题4分共25题)1.同事小鹅在训练深度学习模型是发现训练集误差不断减小,测试集误差不断增大,以下解决方法错误的是: (过拟合怎么处理) 数据增强 增加网络深度 提...原创 2018-04-09 14:32:00 · 29771 阅读 · 0 评论 -
Python(.py)文件打包为.exe文件
在我们使用IDE完成一个Python项目或一个程序时,希望将Python的py文件打包成在Windows系统下直接可以运行的exe程序。在浏览网上的资料来看,有利用pyinstaller和cx_Freeze两种进行打包的方法。方法一:使用cx_Freeze关于cx_Freeze打包的方法,可以参考wangdamozhizhou博客windows下cx_Freeze生成Python可...原创 2018-07-11 17:30:07 · 999 阅读 · 0 评论 -
算法题-两个链表的第一个公共结点
[编程题]两个链表的第一个公共结点 时间限制:1秒 空间限制:32768K 输入两个链表,找出它们的第一个公共结点。 给两个指针,”分别”从头到尾遍历”两个链表“,只要没遇到公共结点就继续遍历,最终两个指针到达 null 或者到达公共结点,返回之.C++/*struct ListNode { int val; struct ListNode *next...原创 2018-06-07 16:24:37 · 692 阅读 · 0 评论 -
算法题-数组中重复的数字
[编程题]数组中重复的数字 时间限制:1秒 空间限制:32768K 题目描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。 解题思路找到任意重复的一个值并赋值...原创 2018-06-07 16:05:23 · 901 阅读 · 0 评论 -
Python——数据分析Pandas入门
pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析。它提供了大量高级的数据结构和对数据处理的方法。 pandas 有两个主要的数据结构:==Series== 和 ==DataFrame==。数据结构Pandas 中的数据类型 Pandas 基于两种数据类型,series 和 dataframe。 series 是一种原创 2017-10-24 17:25:30 · 1924 阅读 · 0 评论 -
正确设置--双击打开ipynb文件
两句闲话 这个问题前阵子一直在意,也没搞,直到发现每次notebook工作空间内需要导入越来越多的其他各种格式的数据文件,这样一个一个upload到workspace下还是太麻烦了,当然你也可以更改默认工作空间(具体参考)百度上太多的答案都是无脑互相抄,最后你搜到的博客结局方法全是错误的,还是去Google搜吧,或者起码有点辨别能力,不要看见谁的博客上命令不经辨别和理解就直接在自己的机器...原创 2018-04-10 15:33:15 · 3576 阅读 · 6 评论 -
算法题-数组中出现次数超过一半的数字(python)
1.数组中出现次数超过一半的数字数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如 输入一个长度为9的数组 {1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此 输出2。如果不存在则 输出0。1.利用dict.setdefault(key, default=None) 使用dic...原创 2018-05-26 12:47:00 · 1277 阅读 · 0 评论 -
算法题-求链表中倒数第k个节点
时间限制:1秒 空间限制:32768K 本题知识点: 链表 题目描述输入一个链表,输出该链表中倒数第k个结点。思路1: 遍历两次数组,第一次先统计出来个数n,第二次再求出n-k+1,将求倒数第k节点的问题转化为正数第n-k+1的问题C++/*struct ListNode { int val; struct ListNode *next; ...原创 2018-06-03 20:34:34 · 465 阅读 · 0 评论 -
算法题-求数组中 连续子数组最大和
[编程题]连续最大和 . 热度指数:38075 时间限制:1秒 空间限制:32768K 算法知识视频讲解 一个数组有 N 个元素,求连续子数组的最大和。 例如:[-1,2,1],和最大的连续子数组为[2,1],其和为 3 输入描述: 输入为两行。 第一行一个整数n(1 <= n <= 100000),表示一共有n个元素 第二行为n个数,即每个元素,每个整数都...原创 2018-06-03 20:49:25 · 2635 阅读 · 0 评论 -
算法题-倒置字符串(逐词)
[编程题]倒置字符串 时间限制:1秒空间限制:32768K将一句话的单词进行倒置,标点不倒置。 比如 I like beijing. 经过函数后变为:beijing. like I 输入描述: 每个测试输入包含1个测试用例: I like beijing. 输入用例长度不超过100输出描述: 依次输出倒置之后的字符串,以空格分割\示例1输入 I like be...原创 2018-05-28 14:00:26 · 1508 阅读 · 1 评论 -
算法题-数组中的逆序对
[编程题]数组中的逆序对 时间限制:1秒空间限制:65536K在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007 输入描述: 题目保证输入的数组中没有的相同的数字数据范围:对于%50的数据,size<=10^4对于%7...原创 2018-05-28 14:20:50 · 868 阅读 · 0 评论 -
算法题-反转单链表
[编程题]反转链表时间限制:1秒 空间限制:32768K输入一个链表,反转链表后,输出链表的所有元素。解法一.循环反转链表(非递归法) 整体思路就是,从原链表的头部一个一个取节点并插入到新链表的头部p始终指向要反转的结点newHead 指向反转后的首结点每反转一个结点,把p结点的next指向newHead, newHead再移动到P的位置成为反转后首结点, 再把p通过tmp...原创 2018-06-04 17:02:08 · 983 阅读 · 0 评论 -
算法题-合并两个排序的链表
[编程题]合并两个排序的链表时间限制:1秒 空间限制:32768K输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。主要思路1、本题很显然用递归方式很好实现,同时需要注意下算法的鲁棒性即——首先处理空链表,当其中一个为空链表时,直接输出另一个;当两个均为空链表时,输出null 2、比较 list1 和 list2 的头结点,较小的头结...原创 2018-06-04 17:24:36 · 703 阅读 · 0 评论 -
算法题-字符串旋转
对于一个字符串,和字符串中的某一位置,请设计一个算法,将包括i位置在内的左侧部分移动到右边,将右侧部分移动到左边。给定字符串A和它的长度n以及特定位置p,请返回旋转后的结果。测试样例: “ABCDEFGH”,8,4 返回:”FGHABCDE”正常解法1.用 “[ ]”按特定位置访问逐字符拷贝class StringRotation {public: string ...原创 2018-05-24 20:08:41 · 895 阅读 · 0 评论 -
算法题-二维数组(杨氏矩阵)中查找一个整数是否存在
题目描述在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。二维数组实际上就是杨氏矩阵思路 这是一个非常常见的问题,总结下来一共三种方式:mlogn(m为行n为列)1.(暴力求解)两层循环嵌套开始逐个逐行遍历,时间复杂度O(m*n) 2.进化版.把每一行...原创 2018-05-30 11:52:35 · 18051 阅读 · 0 评论 -
算法题-调整数组顺序使奇数位于偶数前面
1.[编程题]调整数组顺序使奇数位于偶数前面 时间限制:1秒 空间限制:32768K输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。思路及解法:一.C++解法1.创建新数组(1) 先把原数组中的奇数push进去再把偶数push进去,然后用新数组数据覆盖...原创 2018-05-31 12:10:29 · 2411 阅读 · 0 评论 -
算法题-顺时针打印矩阵
2.顺时针打印矩阵顺时针打印矩阵[编程题]顺时针打印矩阵 时间限制:1秒空间限制:32768K输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.总结下来整体思路分为两大类:...原创 2018-05-31 12:55:43 · 635 阅读 · 0 评论 -
Python 使用全局变量
今天在写以下Python代码时出现了问题。该段代码根据一些URL下载视频:#coding=utf-8def save_case_infos(case_urls): for case_url in case_urls: # some download code ... # 打印已下载的视频个数 # 希望访问全局变量 case_tot...原创 2018-08-27 16:18:42 · 543 阅读 · 0 评论