1、题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 2、解题思路 一棵二叉搜…
标签:算法
最少硬币问题(动态规划)
最少硬币问题 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 设有…
死磕算法-切金条
场景引入 一块金条切成两半,是需要花费和长度数值一样的铜板的。比如 长度为20的 金条,不管切成长度多大的两半,都要花费20个铜 板。一羣人想整分整块金 条,怎么分最省铜板? 例如,给定数组{10,20,30},代表一共…
TopK 问题
TopK 问题 package p56; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; im…
二叉树的层次遍历
二叉树的层次遍历 要实现二叉树的层次遍历,需要借助队列实现,这种方法也称为宽度优先遍历(Breadth-First Search, BFS)。 主要思想是,借助队列,先将根结点入队,开启循环,队列为空的时候循环结束,每一…
Longest Palindromic Substring
题目梗概: 找出指定字符串中最长的回文子串。 解题思路: 最简单的方法应该是找出指定字符串的所有子串,从最长的子串开始判断是否是回文字符串,是则直接返回该子串,不是则继续对…
把数组排成最小的数
题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 解题思路 先将数组转换成字符串数…
例题11-6 这不是bug,而是特性(It's not a Bug, it's a Feature!, UVa 658)(隐式图+最短路+位运算)
题目https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=8&page=show_probl…
利用自然分组的合并排序(C语言)
合并排序算法是用分治策略实现对n个元素进行排序的算法。其基本思想是:将待排元素分成大小大致相同的两个子集合, 分别对这两个子集合进行排序,最终…
1024 科学计数法 (20 分) 完全解析(C++详细思路)
科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该数字及其指数部分…
杭电hduoj 2504 又见GCD
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2504 算法特工队QQ羣:979618872 (伸手党绕边,欢迎有良好基础的人加入) // // Created by Le…
计蒜客 T1560 二分查找(一)
题目链接:https://nanti.jisuanke.com/t/T1560 算法特工队QQ羣:979618872 (伸手党绕边,欢迎有良好基础的人加入) // // Created by Leo Lee on 201…