Data Structures and Programming Methodology CS61

1 Asymptotics
(a) We have a function findMax that iterates through an unsorted int array once and returns the
maximum element found in that array. Give the tightest lower (Ω( · )) and upper bounds ( O ( · )) of
findMax in terms of N , the length of the array. Is it possible to define a Θ( · ) bound for findMax ?
(b) Give the worst case and best case runtime in terms of M and N . Assume ping is in Θ(1) and returns
an int .
1
for ( int i = N; i > 0; i--) {
2
for ( int j = 0; j <= M; j++) {
3
if (ping(i, j) > 64) break ;
4
}
5
}
(c) Below we have a function that returns true if every int has a duplicate in the array, and false if there
is any unique int in the array. Assume sort(array) is in Θ( N log N ) and returns array sorted.
1
public static boolean noUniques( int \[\] array) {
2
array = sort(array);
3
int N = array.length;
4
for ( int i = 0; i < N; i += 1) {
5
boolean hasDuplicate = false ;
6
for ( int j = 0; j < N; j += 1) {
7
if (i != j && arrayi == arrayj) {
8
hasDuplicate = true ;
9
}
10
}
11
if (!hasDuplicate) return false ;
12
}
13
return true ;
14
}
Give the worst case and best case runtime in Θ( · ) notation, where N = array.length .

相关推荐
lengxuenong1 分钟前
树状数组 · 信息学学习手册1-求和3个模板
c++·学习·算法·青少年编程
yliucherish4 分钟前
Log4Shell 复现实录:我读 OpenJDK 源码,发现两道防线的默认值竟然相反
java
ComputerInBook11 分钟前
泛函分析概观
人工智能·算法·机器学习·泛函分析
维拉德12 分钟前
Java新人第一次接打标需求:从抓包找接口到客户端展示
java
luobobo89621 分钟前
支付回调验签连续失败三天,最后发现是网关的时间戳单位问题
java
BBmmo21 分钟前
Java InputStream.read() 为什么返回 int?
java
Nuanyt36 分钟前
LeetCode Hot100 刷题笔记 · 普通数组专题
java·笔记·算法·leetcode
q275513004237 分钟前
AS8132 DP转HDMI 4K60(420)被动式 国产性价比AS方案
linux·算法·硬件架构·dash
安全指北针42 分钟前
密态计算:数据 “可用不可见” 的底层技术解析
人工智能·算法