AGTC Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 7780 Accepted:&nb…
标签:算法
《剑指offer》面试题16扩展题
该题目的扩展题为:“用递归实现同样的反转链表的功能” 我们知道对于可以循环解决的问题,递归也一定可以,因为这道题目要求返回的必须是反转后的头结点,也就是说我的递归函数在函数结尾的时候一定要是这样: return Reve…
插入排序(Insertion Sort)
维基百科:http://zh.wikipedia.org/wiki/插入排序 算法思想: 若数组A[n]的前n-1个数已经有序,我们只需把第n个元素插入到适当的位置即可。易分析得算法的时间复杂度为Ο(n^2) 具体描述:…
歸併排序
歸併排序的JAVA實現 import java.util.Arrays; //歸併排序之JAVA實現(迭代法) public class MergeSort { public void Merge(int[] array…
LeetCode Problem 424: Longest-Repeating-Character-Replacement
問題描述 Problem 424: Given a string that consists of only uppercase English letters, you can replace any letter i…
算法:基於比較的排序算法
1、冒泡排序: (1)平均時間複雜度:O(n2) (2)最好時間複雜度:O(n) (3)最壞時間複雜度:O(n2) (5)空間複雜度:O(1) (5)穩定性:穩定 (6)JavaScript實現: function bu…
堆排序
堆排序過程 1. 建立堆 2. 對堆排序 統計大文件中數據單詞次數前k的問題中需要應用。 注意 : 1. 堆的建立過程是從底自上; 2. 堆的排序過程是從上自下,其過程很好理解,在建立堆的過程中要從底部向上調整元素,保證…
最小二乘法直線擬合
【算法研究與實現】最小二乘法直線擬合 作者:gnuhpc 出處:http://www.cnblogs.com/gnuhpc/ 1.原理 在現實中經常遇到這樣的問題,一個函數並不是以某個數學表達式的…
德•梅齊里亞克的法碼問題
德·梅齊里亞克的法碼問題The Weight Problem of Bachet de Meziriac &nb…
字典樹(trie)
#include<iostream> #include<vector> #include<string> using namespace std; #define MAX…
歐幾里得算法的另類想法
歐幾里得算法又稱輾轉相除法,用於計算兩個正整數a,b的最大公約數。 其計算原理依賴於下面的定理: 定理: &…
【java数据结构与算法学习】几个递归算法的实现
这次刚看到递归,写了几个递归的算法。其中包含了求阶乘、斐波那契数列、字符串逆序输出、折半查找实现。 import java.io.IOException; import java.util.Scanner; public…