码迷,mamicode.com
首页 >  
搜索关键字:算法    ( 83296个结果
一种适合于大数据的并行坐标下降法
在机器学习中,模型的训练是一个很重要的过程,它通常是对一个目标函数进行优化,从而获取模型的参数,比较常见的优化算法包括梯度下降法、牛顿法与拟牛顿法等。但在大数据的背景下,尤其对于并行实现来说,优化算法通常是越简单越好,如坐标下降法(CD)和随机梯度下降法(SCG)就比较受欢迎。本文是阅读完论文 Distributed Coordinate Descent Method for Learning with Big Data 的一则笔记,主要介绍算法 Hydra (一种分布式坐标下降法)的算法框架、收敛性理论、...
分类:其他好文   时间:2014-06-29 07:38:26    阅读次数:350
LeetCode: Convert Sorted Array to Binary Search Tree [108]
【题目】 Given an array where elements are sorted in ascending order, convert it to a height balanced BST. 【题意】 给定一个已排序的数组(不存在重复元素),将它转换成一棵平衡二叉搜索树。 【思路】 由于平衡二叉树要求左右子树的高度差绝对值相遇等于1,也就是说左右子树尽可能包含相同数目节点。 则使用二分法来解本题即可。...
分类:其他好文   时间:2014-06-20 11:03:31    阅读次数:246
LeetCode: Balanced Binary Tree [110]
【题目】 Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1. 【题意】 判断二叉树是否是平衡二叉树 【思路】 平衡二...
分类:其他好文   时间:2014-06-20 11:02:54    阅读次数:173
字符串元素重排高效算法集合
以下各题均有时间复杂度为O(n*n)或以空间换取时间使得时间空间复杂度为O(n)的算法,在此均不考虑。 问题一、字符串移动       字符串为*号和26个字母的任意组合,把*号都移动到最左侧,把字母移到最右侧并保持相对顺序不变,要求时间和空间复杂度最小 。如“afdg**fa**hjfkdsl”变换成“****afdgfahjfkdsl”          此题前后字符串的长度...
分类:其他好文   时间:2014-06-20 10:49:56    阅读次数:296
LeetCode: Binary Tree Level Order Traversal II [107]
【题目】 Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left to right, level by level from leaf to root). For example: Given binary tree {3,9,20,#,#,15,7}, 3 / 9 20 / 15 7 return its b...
分类:其他好文   时间:2014-06-20 09:42:30    阅读次数:224
LeetCode: Convert Sorted List to Binary Search Tree [109]
【题目】 Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST. 【题意】 将一个有序链表转换成平衡二叉树 【思路】 思路跟Convert Sorted Array to Binary Search Tree完全一样...
分类:其他好文   时间:2014-06-07 16:20:05    阅读次数:287
算法导论(Introduction to Algorithms )— 第二章 算法入门 — 2.1 插入排序
算法导论(Introduction to Algorithms )— 第二章 算法入门 — 2.1 插入排序,及习题拙见...
分类:其他好文   时间:2014-06-07 15:48:19    阅读次数:237
排序算法之计数排序
6. 线性时间排序 6.1 计数排序 我们之前介绍的所有排序算法,都需要依次比较输入元素之间的大小,有些甚至需要重复比较多次,我们将这一列算法统称为比较排序。 接下来,我们将讨论三种以线性时间运行的排序算法,分别是计数排序、基数排序和桶排序,这些算法都用非比较的操作来确定排序的顺序。 计数排序,该算法的基本思路是,对于某一个元素,已知数组中比该元素小的元素的个数为,则可将该元素放置在的位置上。PS:当有相同元素时,此方案需要做一些特殊处理。...
分类:其他好文   时间:2014-06-07 12:23:07    阅读次数:217
JAVA用标准库自己写一个字符串翻转方法,翻转字符串中字母非单词
例如输入:I love programming 输出:I evol gnimmargorp 算法思路就是:根据空格提取每一个单词,存放在一个buffer里进行翻转处理,再添加到新的字符串。最后新的字符串就完成整个方法过程。 public class ReserveString { public String reserve(String sentence){ Strin...
分类:编程语言   时间:2014-06-07 12:20:14    阅读次数:246
[LeetCode] Longest Palindromic Substring [14]
最长回文字串,相信做过Palindrome Partitioning II 这个题的同学应该可以很快做出来。没错,这个题还可以使用动态规划方法得到一个时间复杂度为O(n^2)的解法,当然如果你想要更好的时间复杂度的算法也是有的。好的,我们先来看看时间复杂度为O(n^2)的算法。 代码实现--动态规划O(n^2) 相信如果你在网上看过了别人的算法,你会发现我的算法是最简洁的。哈哈,这个题需要注意的是如果你用惯了vector的话,你这里肯定会得到超时的提示... ...代码二--复杂度为O(n)的算法...
分类:其他好文   时间:2014-06-07 12:08:43    阅读次数:224
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!