AgoniAngel
码龄7年
  • 64,199
    被访问
  • 71
    原创
  • 480,742
    排名
  • 35
    粉丝
关注
提问 私信

个人简介:我的bug早已饥渴难耐

  • 加入CSDN时间: 2015-07-21
博客简介:

AgoniAngel

博客描述:
限制一个人发展的,往往是眼界。
查看详细资料
个人成就
  • 获得47次点赞
  • 内容获得11次评论
  • 获得123次收藏
创作历程
  • 1篇
    2021年
  • 27篇
    2020年
  • 6篇
    2019年
  • 1篇
    2018年
  • 1篇
    2017年
  • 22篇
    2016年
  • 16篇
    2015年
成就勋章
TA的专栏
  • 设计模式
    1篇
  • 算法专题
    11篇
  • 链表
    1篇
  • LeetCode
    12篇
  • 并查集
    1篇
  • DFS
    2篇
  • 动态规划
    6篇
  • 双指针
    2篇
  • 哈希表
  • C#
  • 堆
    3篇
  • 栈
    2篇
  • 博弈论
    1篇
  • 树
    2篇
  • 基础题
    15篇
  • 搜索
    1篇
  • 数论
    8篇
  • 字符串
    11篇
  • 字典树
    2篇
  • C/C++
    6篇
  • 贪心
    1篇
  • 组合数学
    11篇
  • 母函数
    4篇
  • 计算几何
    1篇
  • Python
    6篇
  • NLP
    1篇
兴趣领域 设置
  • 数据结构与算法
    排序算法推荐算法
  • 人工智能
    opencvcaffetensorflowmxnetpytorchnlpscikit-learn聚类集成学习迁移学习分类回归
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Python 写入tsv文件

with open(r'file.tsv', 'w', newline='') as f: tsv_w = csv.writer(f, delimiter='\t') tsv_w.writerow(['A1', 'A2', 'A3']) tsv_w.writerows(np.array(data_frame).tolist()) # 多行写入newline用于避免多余的空行。如果没有指定newline='',则每行数据后面都会多一行空行。参考:写入tsv文件的多..
原创
发布博客 2021.01.21 ·
2610 阅读 ·
2 点赞 ·
0 评论

【专题】最大子数组和 / 子矩阵和

最大子矩阵给定一个正整数和负整数组成的 N × M矩阵,找出元素总和最大的子矩阵,返回它的元素总和。输入: [1,3,-4,2], [2,-1,2,-1]输出: 5【思路】 这题可转化为"最大子数组和"求解,只需要将二维转化为一维。对于矩阵的每一列,我们将其加在一起,得到一维数组 b,b[i]表示矩阵第 i 列所有元素和。更准确的解释如下图:那么怎么把每个子矩阵都遍历到呢?我们每次选择两行 i 和 j,代表子矩阵的上下边界,并求每列的和(得到数组b),然后按"最..
原创
发布博客 2020.08.22 ·
184 阅读 ·
0 点赞 ·
0 评论

【专题】股票问题

目录文章:一个方法团灭 6 道股票问题121. 买卖股票的最佳时机(只能买一次)122. 买卖股票的最佳时机 II(可多次买卖)123. 买卖股票的最佳时机 III(最多买2次)188. 买卖股票的最佳时机 IV309. 最佳买卖股票时机含冷冻期714. 买卖股票的最佳时机含手续费文章:一个方法团灭 6 道股票问题LeetCode股票题通用方法:一个方法团灭 6 道股票问题动态规划。三维DP:第一个是天数,第二个是允许交易的最大次数,第三个是当前的持有状态...
原创
发布博客 2020.08.09 ·
146 阅读 ·
0 点赞 ·
0 评论

【专题】排列 / 组合问题

31. 下一个排列(next_permutation)给定一个数组,将它重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子:1,2,3 → 1,3,2 3,2,1 → 1,2,3 1,1,5 → 1,5,146. 全排列给定一个没有重复数字的序列,返回其所有可能的全排列。输入: [1,2,3]输出:[ [1,2,3]...
原创
发布博客 2020.07.31 ·
76 阅读 ·
0 点赞 ·
0 评论

【专题】字符串匹配

28. 实现 strStr()给定一个haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回-1。输入: haystack = "hello", needle = "ll"输出: 2输入: haystack = "aaaaa", needle = "bba"输出: -110. 正则表达式匹配给你一个字符串s和一个字符规律p,请你来实现一个支持 '.'...
原创
发布博客 2020.07.31 ·
78 阅读 ·
0 点赞 ·
0 评论

【专题】链表

21. 合并两个有序链表将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。输入:1->2->4, 1->3->4输出:1->1->2->3->4->423. 合并K个排序链表合并k个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。输入:[1->4->5,1->3->4,2->6]输出: 1->1-...
原创
发布博客 2020.07.25 ·
49 阅读 ·
0 点赞 ·
0 评论

【专题】回文

一、字符串问题5.最长回文子串【中等】给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。214. 最短回文串【困难】给定一个字符串s,你可以通过在字符串前面添加字符将其转换为回文串。找到并返回可以用这种方式转换的最短回文串。输入: "aacecaaa"输出: "aaacecaaa"输入: "cbbd"输出: "bb"516. 最...
原创
发布博客 2020.07.20 ·
90 阅读 ·
0 点赞 ·
0 评论

图解C++菱形继承、虚继承对象的内存分布

目录菱形继承的内存分布虚继承的内存分布虚继承(有虚函数)的内存分布菱形继承的构造/析构顺序虚继承的构造/析构顺序
原创
发布博客 2020.05.02 ·
868 阅读 ·
3 点赞 ·
0 评论

Top k 问题的两种经典解法

【题目】给定一个长为n的数组,找出其中最小的k个数(或 第k小的数)。【思路】以找"最小的k个数"为例。方法一:堆class Solution {public: vector<int> getLeastKNums(vector<int>& arr, int k) { int n = arr.size(); ve...
原创
发布博客 2020.04.21 ·
153 阅读 ·
0 点赞 ·
0 评论

【专题】打家劫舍/粉刷房子/栅栏涂色

打家劫舍【LeetCode 198】【题目】给定一个非负整数数组,代表每个房子的现金数。如果两间相邻的房屋同时被小偷闯入,系统会自动报警。计算小偷在不触动警报装置的情况下,能够偷窃到的最高金额。输入: [2,7,9,3,1]输出: 12解释: 偷窃 1 号房屋 (金额 = 2), 偷窃 3 号房屋 (金额 = 9),接着偷窃 5 号房屋 (金额 = 1)。 偷窃到的最高金额...
原创
发布博客 2020.04.16 ·
164 阅读 ·
0 点赞 ·
0 评论

堆排序原理及实现

原理以升序排序为例(升序采用大顶堆,降序采用小顶堆)。可以分成2步:(1)将待排序的序列构造成一个大顶堆,这时堆顶就是序列的最大值。(2)将堆顶元素和末尾元素进行交换,这时最大值就放到了末尾。然后将剩下n-1个元素重新构造成一个堆,这样堆顶就是n个元素的次大值。这样反复执行n-1轮后,序列就排好序了。第1步:将待排序的序列构造成一个堆思想:从最后一个非叶子节点开始,对于每...
原创
发布博客 2020.04.16 ·
101 阅读 ·
0 点赞 ·
0 评论

实现堆(push/pop)

堆可以用数组模拟。假设堆顶在arr[1],那么任意节点 i 的左右子节点分别是 2i 和 2i+1,父节点是i/2.堆具有以下性质: 大顶堆:arr[i] >= arr[2i] && arr[i] >= arr[2i+1] (i = 1,2…) 小顶堆:arr[i] <= arr[2i] && arr[i] &...
原创
发布博客 2020.04.15 ·
704 阅读 ·
2 点赞 ·
0 评论

【专题】在数字中间添加运算符,使等式成立

【招商银行卡笔试 20.04.08】给定一个字符串s和一个整数k,只含有数字0-9,在字符串中随意插入 + 号或 - 号(不能在两端插入),使得算式结果为k。输出可行的方案数。1字符串长度12,11e4类似题:Leetcode494#include <iostream>using namespace std;int k, cnt;string s;vo...
原创
发布博客 2020.04.11 ·
1180 阅读 ·
0 点赞 ·
0 评论

图解C++虚函数表和类对象的内存分布

1.单继承的内存分布2.多继承的内存分布3.菱形继承的内存分布
原创
发布博客 2020.04.11 ·
448 阅读 ·
1 点赞 ·
1 评论

连续子序列的最大值的期望

【阿里笔试题 20.03.30】小强得到了长度为n的序列,但他只对非常大的数字感兴趣,因此随机选择这个序列的一个连续子序列,并求这个序列的最大值,请告诉他这个最大值的期望是多少。序列是无序的,且可能含有重复值。输入第一行n表示序列长度接下来一行n个数描述这个序列,,数字保证是正整数且不超过100000第二行n个数字表示序列的值输出保留6位小数样例输入:...
原创
发布博客 2020.03.31 ·
956 阅读 ·
0 点赞 ·
0 评论

石子游戏

【百度笔试题 200329】有n堆石子,每堆有a[i]个石子。男、女两个人轮流取,每次从任意一个堆中取一个石子。当一个人取之前所有堆都是空的,或者取之后存在两个堆的石子数量相同,则这个人输。男的先取,两人取石子都使用对自己最有利的策略,输出最后的赢家。输入:第一行T, 表示样例数对于每组样例, 第一数为n, 后面n个数为每堆的石子数量21 [0]2 [2,2]输出...
原创
发布博客 2020.03.29 ·
153 阅读 ·
1 点赞 ·
0 评论

LeetCode 1246 删除回文子数组

微软笔试题 20.3.25【题目】给你一个整数数组 arr,每一次操作你都可以选择并删除它的一个 回文子数组 arr[i], arr[i+1], ..., arr[j],其中 i <= j。注意,每当你删除掉一个子数组,右侧元素都会自行向前移动填补空位。请你计算并返回从数组中删除所有数字所需的最少操作次数。
原创
发布博客 2020.03.26 ·
527 阅读 ·
1 点赞 ·
0 评论

两人轮流抽奖的中奖概率

【360 20.3.25】抽奖箱里有n张中奖票,m张不中奖票。A和B轮流从箱里抽一张,A先抽。只要有人抽到中奖票就结束,中奖的人胜利。抽过的票会被丢弃。此外,B每次抽后,会再抽一张并丢弃(这张票即使中奖也不算B胜利)。求A的胜率,保留4位小数。若两人最后都没抽到过中奖票,则算作B胜利。输入:两个数字n和m,代表中奖票数和不中奖票数(0<=n,m<=1000)...
原创
发布博客 2020.03.25 ·
788 阅读 ·
1 点赞 ·
0 评论

【专题】编辑距离/最长公共子序列/最长公共子数组

两个字符串a和b,长度相等,并且只有A和T两种字符。通过2种操作把a变成b,求最少操作次数。第1种操作,替换一个字符第2种操作,交换两个字符的位置示例:输入:TAAATTAATTAA输出:3解释:把第1个字符T替换为A,第3、5个字符交换,第4、6个字符交换。来自360笔试(2020.3.24)【思路】这题类似于编辑距离,但操作不同,总体要简单些,不需要...
原创
发布博客 2020.03.24 ·
155 阅读 ·
0 点赞 ·
0 评论

LeetCode 298 二叉树最长连续序列

【题目】给定一个二叉树,求最长连续序列的长度。连续序列是一条父节点到子节点路径,路径上的数连续递增(子节点的数比父节点大1)。Given a binary tree, find the length of the longest consecutive sequence path.The path refers to any sequence of nodes from some ...
原创
发布博客 2020.03.22 ·
223 阅读 ·
0 点赞 ·
0 评论
加载更多