- 浏览: 103024 次
- 性别:
- 来自: 北京
-
文章分类
最新评论
-
dreamoftch:
...
对hibernate的理解 -
quanwsx:
对hibernate的理解 -
zxt1985:
太坑爹了……啥都没
**java网络编程 -
Java_zhou:
坑爹啊。。。
**java网络编程 -
juda:
this code can not work rightly ...
Reverse String
import java.util.*; import java.io.*; class Url{ String url; int count; public void setUrl(String url){ this.url=url; } public void setCount(int count){ this.count=count; } public String getUrl(){ return this.url; } public int getCount(){ return this.count; } } public class MaxK{ Map<String,Integer> map; public MaxK(){ map=new HashMap<String,Integer>(); } public int partion(int low,int high,Url[]array){ int i=low; int j=high; int c; c=array[j].getCount(); Url tmp=array[j]; while(i!=j){ while((array[i].getCount()<c)&&(i<j)){ i++; } if(i<j){ array[j]=array[i]; j--; } while((array[j].getCount()>c)&&(i<j)){ j--; } if(i<j){ array[i]=array[j]; i++; } } array[i]=tmp; return i; } public void getMaxK(int k,Url[] array){ int low=0,i=0; int len=array.length; int high=len-1; while(true){ i=partion(low,high,array); if(i==(k-1)){ System.out.println(i+"=="+(k-1)); break; } if(i<(k-1)){ low=i+1; }else{ high=i-1; } } System.out.println("\nthe sorted array:\n"); for(i=0;i<k;i++){ System.out.println(array[i].getUrl()); } } public Url[] setUrlArray(String path){ try{ BufferedReader br=new BufferedReader(new FileReader(path)); String str; Integer i; while((str=br.readLine())!=null){ if(map.containsKey(str)){ int count=map.get(str).intValue(); i=new Integer(count+1); }else{ i=new Integer(1); } map.put(str,i); } }catch(Exception ex){ } int n=map.size(); int i=0; Url[] array =new Url[n]; Iterator it=map.entrySet().iterator(); while(it.hasNext()){ Map.Entry me=(Map.Entry)it.next(); array[i]=new Url(); array[i].setUrl((String)me.getKey()); array[i].setCount(((Integer)me.getValue()).intValue()); System.out.println("array["+i+"].url="+(String)me.getKey()+","+"array["+i+"].count="+((Integer)me.getValue()).intValue()); i++; } return array; } public static void main(String[] args){ MaxK mk=new MaxK(); Url array[]=mk.setUrlArray("urls.txt"); mk.getMaxK(3,array); int len=array.length; int i=0; while(i<len){ System.out.println("array["+i+"].url="+array[i].getUrl()+","+"array["+i+"].count="+array[i].getCount()); i++; } } }
用shell实现:
cat url.txt|sort|uniq -c|sort
shell总是那么强大,(⊙o⊙)…
发表评论
-
0928--算法题
2010-09-28 11:14 1554算法设计:n个连续自然数,乱序存放于一个数组中,缺失一个,缺失 ... -
Reverse String
2010-09-19 16:46 1000package org.jyjiao; public c ... -
0906--拼接出最小整数
2010-09-06 10:38 1182题目描述:设有n个正整数,将它们联接成一排,组成一个最小的多位 ... -
0830--算法练习题
2010-08-28 17:42 9311. 内存中有一个长数组,条目数为10万,数组单元为结构体st ... -
??0829-Joseph问题
2010-08-28 16:39 873N个人排成一圈,指定第一个人,去除他,然后跳着一人去除第3人, ... -
???0828--存储空间管理器+n选m问题
2010-08-28 16:36 1032用单链表实现一个存储空间管理器,包括分配和释放空间。要求释放 ... -
# 0827--算法练习题
2010-08-25 14:12 8201. 一个文本文件有多行 ... -
!!!0826--图
2010-08-25 14:11 651baidu1 -
###0825-1 最短路径+最小支撑树+路径压缩+等价类问题+拓扑排序
2010-08-25 13:28 833dijkska算法实现 floyed算法实现 ... -
# 0823--树进阶
2010-08-25 13:27 7331. 判断一棵二叉树是否平衡 2. 构造AVL ... -
#0822 系分
2010-08-23 14:18 671http://www.blogjava.net/ITdavid ... -
0821集合问题
2010-08-23 14:16 786{ aaa, bbb, ccc},{bbb, ddd }, { ... -
0820-mirosoft
2010-08-20 12:43 950传说中微软的几道算法题,练习一下吧: 1.设计一个 ... -
0819- 找共同url
2010-08-18 17:47 831给你a、b两个文件,各存放50亿条url,每条url各占用64 ... -
0819--找队友
2010-08-18 11:52 1046全体员工玩分组游戏,前面五分钟大家分头找队友,并将每个人找到的 ... -
0817--概率问题
2010-08-16 18:53 738输入:N(整数)输入:数据文件A.txt,不超过6条记录,字符 ... -
0816--支配数
2010-08-16 18:52 772支配数:数组中某个元素出现的次数大于数组总数的一半时就成为支配 ... -
0815-二叉树
2010-08-14 11:10 968第一题: 在一棵一般的二叉树中找到指定的元素,如果有重 ... -
0811-3 对webservice执行自动化测试
2010-08-11 20:05 9520811-3 对webservice执行自动化测试 i ... -
0812-字典树算法
2010-08-11 19:59 19591. 在用户输入英文单词时,经常发生错误,我们需要对其进行纠错 ...
相关推荐
加载每个小文件,通过dict计算url的出现次数,然后通过堆获取topn出现次数。 合并步骤2中所有出现的topn事件,并获得最终的topn并进行打印。 复杂度分析 N是网址数。 NS是分割文件的数量,等于1009。K是我们想要的...
本项目旨在解决从100GB的URL数据中统计出出现次数最多的Top 100 URL的问题。由于内存限制仅为1GB,项目采用了高效的分布式处理和优化策略,确保在有限的资源下高效完成任务。 ## 项目的主要特性和功能 1. 数据拆分...
最后队列中的N个元素即为出现次数最多的N个数据。 10. **统计文本文件中最频繁的词** 采用TF-IDF算法,首先对每个文件进行分词,然后计算每个词的词频(TF)和逆文档频率(IDF)。在Map阶段,计算TF,Reduce阶段...
- 对每个小文件建立一个哈希表,统计每个IP出现的次数,并记录每个文件中出现次数最多的IP。 - 从1024个文件中找出总体上出现次数最多的IP。 ### 5. 按照查询频率排序用户查询 #### 题目描述 有10个各含1G数据的...
END {for(url in counts) print counts[url], url}'`: 计算访问量最多的URL。 - `cat access.log|awk '{print $11}'|sort|uniq -c|sort -nr|head -20`: 输出访问最多的20个文件或页面。 - `cat access.log |awk '...
**1、海量日志数据,提取出某日访问百度次数最多的那个IP** - **问题概述**: 给定一天内的海量日志数据,从中找出访问百度次数最多的IP地址。 - **解决方案**: - **初步思路**: 将所有IP地址写入一个大文件,考虑...
`--tries`设置重试次数,例如`--tries=5`表示最多尝试5次。 **八、安全与代理** 如果你需要通过HTTP代理下载,可以使用`--http-proxy`或`--proxy-user`和`--proxy-password`设置。对于HTTPS代理,使用`--...
一、海量日志数据,提取出某日访问百度次数最多的那个 IP 这是一个典型的 hash 表应用问题,解决方案是使用 hash 表将 IP 直接存入内存,然后进行统计。在实际操作中,可以将大文件映射为多个小文件,然后找出每个...
8. **出现次数最多的N个数据**:使用Hash映射+堆结构,先统计每个元素的频率,然后用最小堆维护N个最大频率的元素。 9. **去重字符串**:可以使用HashSet或Trie树,分批处理数据,去除重复。 10. **最频繁词的前10...
解决方法是使用HashMap来统计每个IP的访问次数,然后使用堆排序来输出访问次数最多的IP。 5. 给定2.5亿个整数,需要找出不重复的整数,内存空间不足以容纳这2.5亿个整数。解决方法是使用位数组+Bloom filter来判断...
本文将深入剖析名为"WordFrequency"的源码,理解其如何实现根据URL查询网页中出现次数最多的前N个单词的功能。通过这个程序,我们可以学习到关于文本处理、分词技术以及频率统计的相关知识。 首先,词频统计是指在...
- `maxsplit`:指定最多分割的次数。如果设置为-1,表示无限制,即分割所有出现的分隔符。 例如,有一个字符串`"Hello, World! How are you?"`,我们可以使用逗号作为分隔符进行分割: ```python s = "Hello, ...
7. 上亿数据统计出现次数最多的 N 个数据: 使用优先队列(最小堆)或者 Top-K 算法,每次新数据出现时更新堆。 8. 判断一个数是否在 40 亿个数中: 类似于第6题,可以构建布隆过滤器,但考虑到误判率要求更低,...
- **访问IP统计**:面对海量日志数据,可以通过哈希IP到Bit-Map,统计每个IP的出现次数,找出访问次数最多的IP。 以上技术在大数据场景下尤其重要,它们能够在有限的内存资源下处理海量数据,提供高效且节省空间的...
接下来的任务是对这些结果进行排序,并选出出现次数最多的前N个URL。 ##### 代码实现 - **Mapper**: 直接传递上一阶段的结果。 - **Reducer**: 对URL进行排序,并选取前N个。 具体的代码实现如下: ```java ...
其中,`URL-list` 是要下载的文件或网页的 URL 列表。 ### 常用参数 - `-r` 或 `--recursive`:递归下载。对于 HTTP 网站,会下载指定文件及其引用的所有文件;对于 FTP 网站,会下载指定目录内的所有文件。 - `-N...
问题实例:海量日志数据,提取出某日访问百度次数最多的那个IP。IP的数目还是有限的,最多2^32个,所以可以考虑使用hash将ip直接存入内存,然后进行统计。 3.bit-map: Bit-map是一种常见的大数据处理方法,适用...
- **`{m,n}`**:限定重复次数,表示前面的字符最少出现 m 次,最多出现 n 次。 - **`[a-zA-Z]`**:匹配任意一个英文字母。 - **`\d`**:匹配数字。 - **`\D`**:匹配非数字。 - **`\w`**:匹配字母、数字或下划线。 ...
问题实例:海量日志数据,提取出某日访问百度次数最多的那个 IP。IP 的数目还是有限的,最多 2^32 个,所以可以考虑使用 hash 将 ip 直接存入内存,然后进行统计。 3. bit-map bit-map 是一种可进行数据的快速查找...
- `{n,m}`:匹配至少 n 次,最多 m 次。 5. **分组与捕获**:使用括号 `()` 来创建捕获组。 - `(pattern)`:将 pattern 包围起来,作为一个整体进行匹配。 6. **非捕获组**:使用 `?:` 来创建非捕获组。 - `(?:...