代码编织梦想

洛谷 T156530 儒略历(传智杯-练习赛)-爱代码爱编程

T156530 儒略历 题目描述 在 1582 年之前,以 4 为倍数的年份为闰年。正常情况下,一年中一月到十二月的天数分别是 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 天。如果这年是闰年,那么二月则有 29 天。 但某位皇帝发现这么做其实不够准确,会造成误差,因此规定从 1582 年开始,以 4

经典算法:鸡蛋掉落问题-爱代码爱编程

经典算法:鸡蛋掉落问题 0. 引言1. 问题简介2. 算法思路3. 代码实现4. 算法优化5. 代码实现6. 总结0. 引言 鸡蛋掉落问题算是一道经典的算法题目了,leetcode上面也有收录,是被我收藏了的少数几道题目之一,确实是挺有意思的一道题目,李永乐老师也做过视频讲过这个问题。 刚好今天身体不太舒服,感冒难受的不行,也没啥精力去学一些新的

TiDB 101(TiDB入门分享讲义)-爱代码爱编程

昨天为公司多个部门的小伙伴们做了关于TiDB的科普,把写的讲义直接贴在下面吧。 (Markdown直接渲染成网页真的比做PPT简便太多了 TiDB 101 Part I - Introduction What is TiDB? TiDB is an open-source, distrib

sorting algorithms implemented in Java-爱代码爱编程

binary insertion sort //binary insertion sort import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in

动态规划详解(修订版)-爱代码爱编程

动态规划问题的一般形式就是求最值。动态规划其实是运筹学的一种最优化方法,只不过在计算机问题上应用比较多,比如说让你求最长递增子序列呀,最小编辑距离呀等等。 既然是要求最值,核心问题是什么呢?求解动态规划的核心问题是穷举。因为要求最值,肯定要把所有可行的答案穷举出来,然后在其中找最值呗。 动态规划就这么简单,就是穷举就完事了?我看到的动态规划问题都

黄毅然的JAVA学习(五)-爱代码爱编程

螺钉螺帽问题 假设有N个螺丝和N个螺丝帽混在一堆,需要将它们快速配对。一个螺丝只会匹配一个螺丝帽,一个螺丝帽也只会匹配一个螺丝。可以试着把一个螺丝和一个螺丝帽拧在一起,看看哪一个大了,但不能直接比较两个螺丝或者螺丝帽的大小。给出一个解决此问题的有效方法。 该问题可以使用改进型的快速排序办法。 //黄毅然已经两个月没有更新CSDN了,这个排序弄得我挺头

【报告分享】 2011-2020年中国新经济十年回顾研究报告-36氪 (附下载)-爱代码爱编程

摘要:新经济十年,改变了人们衣食住行、消费娱乐的方方面面。同时,大数据、人工智能、5G、云计算、区块链等新技术不断进步与迭代,加速应用渗透于各行各业。从消费互联网到产业互联网,新经济在我国迅速崛起,各行业百花齐放 来源:36氪     今日报告分享 2020-12-08-2011-2020年中国新经济十年回顾研究报

下一个排列-爱代码爱编程

下一个排列 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须原地修改,只允许使用额外常数空间。 以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,

PAT乙级(Basic Level)真题pat b1019 数字黑洞(探索数字黑洞与Kaprekar常数)-爱代码爱编程

每日刷题(八十四) 题目描述 给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个神奇的数字也叫Kaprekar常数。 例如,我们从6767开始,将得到 7766 - 6677 = 1089 98

编程练习系列-longestPalindrome实现-爱代码爱编程

给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 输入: "bacabab" 输出: "bacab" 思路: 遍历字符串,判定临时字符串中是否含有当前字符,若存在,截取并组成新的子串; 利用回文正序逆序相同进行判定; 若不是回文,则判断是否可以将子串更新为更小的子串,进行判定; 其中当当前子串长度较当前最长回文串

编程练习系列-findMedianSortedArrays实现-爱代码爱编程

给定两个大小为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的中位数。 输入:nums1 = [1,3], nums2 = [2] 输出:2.00000 解释:合并数组 = [1,2,3] ,中位数 2 思路: 首先判断其中任意一个数组是否为空或遍历完; 若不为空或没有遍历结束,继续对比进行合并操作; 最

详解算法思想-动态规划-爱代码爱编程

动态规划解题套路框架 动态规划问题(Dynamic Programming)应该是很多读者头疼的,不过这类问题也是最具有技巧性,最有意思的。本书使用了整整一个章节专门来写这个算法,动态规划的重要性也可见一斑。 刷题刷多了就会发现,算法技巧就那几个套路,我们后续的动态规划系列章节,都在使用本文的解题框架思维,如果你心里有数,就会轻松很多。所以本文放在第一

编程练习系列-lengthOfLongestSubstring实现-爱代码爱编程

给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 思路:遍历整个字符串,将不重复的字符存入新建字符串中,当出现相同字符,则更新字符串(将重复字符及之前的元素全部去掉),并添加新的字符,判定新的字符串长度。 import

编程练习系列- addTwoNumbers实现-爱代码爱编程

给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 输入:(2 -> 4 -> 3) + (5 -> 6 -> 4) 输出:7 -> 0 -> 8 原因:342 + 4

备战蓝桥杯与csp --- 位运算-爱代码爱编程

备战蓝桥杯与csp — 位运算 α. 位运算的定义 数据在计算机里以二进制的形式存在,所谓位运算便是直接对数据在内存中的二进制位进行操作. β. 位运算的形式(参与运算的数以补码进行运算) β1. &(位与) 1 & 1 = 1 0 & 1 = 0 1 & 0 = 0 0 & 0 = 0 我们

【Algorithm】11题_盛最多水的容器-爱代码爱编程

给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器。 public class maxArea_11 { /** *

c++ STL 逻辑算子(Algorithm)-爱代码爱编程

对于那些渴望在竞争性编程方面出类拔萃的人来说,只有了解STL的容器是没有多大用处的,直到你不知道STL提供了什么。 STL有大量的算法,对于所有的<algorithm>库函数:请参阅这里。 关于向量的一些最常用的算法和竞争编程中最有用的算法如下: sort(first_iterator, last_iterator) – 排序revers

Parallelepiped walk-爱代码爱编程

废话不多说,直接上题=V= 题目描述 Two points A (x1, y1, z1) and B (x2, y2, z2) are placed on the surface of parallelepiped with dimensions (see figure 1). These two points can be linked wi

​分治算法详解:表达式的不同优先级-爱代码爱编程

后台回复进群一起刷力扣???? 点击下方卡片可搜索文章???? 读完本文,可以去力扣解决如下题目: 241.为运算表达式设计优先级(Medium) 我们号已经写了 动态规划算法,回溯(DFS)算法,BFS 算法,贪心算法,双指针算法,滑动窗口算法,现在就差个分治算法没写了,今天来写一下,集齐七颗龙珠,就能召唤神龙了~ 其实,我觉得回

动态规划之0-1背包问题(思路详解+表格演示过程+最优解打印方法+详细代码)-爱代码爱编程

问题简介 输入:n种物品和一个背包 物品i的重量是wi,价值为vi 背包的容量是C 输出:装入背包的物品 优化目标是:装入背包的物品总价值最大 优化子结构 设(x1,x2,x3…xn)是0-1背包问题的一个最优解。 如果x1=1,那么(x2,x3,x4,x5…xn)是以下子问题的最优解: 如果x1 =0:则 (x2, …, xn) 是以下子