码迷,mamicode.com
首页 >  
搜索关键字:每日一题    ( 641个结果
【leetcode每日一题】25.Reverse Nodes in k-Group
题目: Given a linked list, reverse the nodes of a linked list k at a time and return its modified list. If the number of nodes is not a multiple of k then left-out nodes in the end should rema...
分类:其他好文   时间:2015-09-01 10:47:27    阅读次数:228
【leetcode每日一题】149.Max Points on a line
题目:Given n points on a 2D plane, find the maximum number of points that lie on the same straight line. 解析:题目要求是给定n个2维的点,求出总共有多少个点在同一条直线上。由数学知识可知,给定三个点a,b,c,如果三个点在一条直线上,则a和b的斜率与c和d的斜率是相同的。用哈希表来做,针对每个点...
分类:其他好文   时间:2015-08-28 17:52:12    阅读次数:205
每日一题32:排序
排序概述排序用途广泛,比如为数据库查询结果按时间排序,最小生成树算法中对边按权重排序,背包问题中对物品按大小排序等等。排序算法有很多,本文主要记录了冒泡排序、插入排序、快速排序、选择排序、堆排序、归并排序等几种比较流行的算法。冒泡排序 //冒泡排序,对数组做n-1趟扫描,每一趟把未就位的元素中的最大的元素 //放到他正确的位置上,每一趟扫描从输入数组第一个元素开始,依次...
分类:编程语言   时间:2015-05-31 11:01:31    阅读次数:210
每日一题31:图的遍历
算法概述图的遍历是指访问图中每个节点一次。图的遍历方式主要有两种,一种是深度优先,即能走多远就先走多远的遍历方式,这就意味着,对于每个节点的遍历完后,下一个访问的节点应该是他的邻接点,而不是兄弟节点。另一种方式是深度优先的方式,这是一种分层遍历,对于没一个节点访问完后,就访问它的兄弟节点,而不是优先考虑邻接顶点。深度优先算法使用递归实现比较直观,而广度优先遍历则需要一个栈辅助,和分层遍历一棵二叉树的...
分类:其他好文   时间:2015-05-30 12:16:38    阅读次数:206
每日一题29:最小生成树
最小生成树是指包含图中所有的顶点而又没有环并且所有边的权值最小的子图,由于这张图没有环,所以就是一棵树。比较流行的两种找到最小生成树的算法有Kruscal算法和Prim算法。本文在代码注释里写明算法的原理和实际计算步骤,然后贴出两种算法运行的结果示例,最后证明算法的正确性。...
分类:其他好文   时间:2015-05-29 09:59:36    阅读次数:167
每日一题28:图的基本操作
本文记录了基于邻接表表示的有向有权图的基本操作。邻接表表示的图的结构就是用一个散列表存储图的节点,而每个节点后面跟着从节点出发的所有边的集合,这些边用链表连接起来,所以在这样的图中寻找一个节点发出的边是容易的,但是寻找进入一个节点的边是困难的,需要遍历所有的边。删除一条边也比较容易,删除一个节点则需要寻找与该节点相关的所有边,并将这些边也删除。#ifndef _NOWEIGHTGRAPH_H_ #d...
分类:其他好文   时间:2015-05-28 21:37:32    阅读次数:238
每日一题26:求逆序对数目与求和
求逆序对问题与解决方案原理 在一个数列中,如果规定从小到大为正序,那么如果排在后面的某个元素比前面的某一个元素小,那么就称这两个数构成一个逆序对,例如,数列5,4,3,2,1中,任一个数都与它前面的数构成逆序对,这个序列中一共就有1+2+3+4=10个逆序对,数列23541中有5个逆序对,那么任给定一个数列,如何知道有多少个逆序对呢?简单的方法是将每个元素与它后面的元素比较,然后就可以累加出总的...
分类:其他好文   时间:2015-05-22 09:52:32    阅读次数:221
每日一题25:Hoffman树
Hoffman树是由David A. Hoffman于1952年在MIT攻读博士学位期间发表的论文《A Method for the Construction of Minimum-Redundancy Codes》中提出的,它的目的寻找一种利用最少量的编码方法表示信息。Hoffman使用自底向上的方法构建了一棵满足要求的树,用这棵树进行的编码叫做Hoffman编码。 用一个节点表示一条信息,每条...
分类:其他好文   时间:2015-05-19 16:36:28    阅读次数:169
每日一题24:堆
本文记录了使用C++模板实现了堆的基本操作,对于其他一些有用操作如IncreaseKey和DecreaseKey等则没有实现,这是因为使用模板把最小堆和最大堆揉在一起,对Key的增减我还没有找到比较好的处理方式,而现在写这个堆数据结构主要是因为在Hoffman树算法需要,基本操作已经够用了。 堆是一棵完全二叉树,所谓完全二叉树就是一棵从上倒下,从左到右依次填满每一个位置的二叉树,除了最后一层节点没...
分类:其他好文   时间:2015-05-14 16:35:04    阅读次数:126
每日一题22:Deque与Trait
虽然之前写过一个Deque,但是那个属于C与C++混合的产品,近来在学习C++模板,所以写了一个C++版,同时第一次尝试使用Trait技术。 本来已经写好的文章,发表之后丢失了,好郁闷,没心情再写了,贴贴代码吧。这个Trait是用来决定传递参数时是使用值传递还是引用传递#ifndef _TYPE_TRAITS_H_ #define _TYPE_TRAITS_H_namespace MyDataSt...
分类:其他好文   时间:2015-04-15 11:23:15    阅读次数:159
641条   上一页 1 ... 59 60 61 62 63 ... 65 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!