• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar
  • Skip to secondary sidebar

GoHired

Interview Questions asked in Google, Microsoft, Amazon

Join WeekEnd Online Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

  • Home
  • Best Java Books
  • Algorithm
  • Internship
  • Certificates
  • About Us
  • Contact Us
  • Privacy Policy
  • Array
  • Stack
  • Queue
  • LinkedList
  • DP
  • Strings
  • Tree
  • Mathametical
  • Puzzles
  • Graph

Get K Max and Delete K Max in stream of incoming integers

March 25, 2014 by Dhaval Dave

Get K Max and Delete K Max in stream of Incoming Integers

Solution 1 : Using Min Heap
Algorithm :

1) Keep a Min & Max Heap of K size
2) Store first K elements in them.
3) If a new element comes with smaller or larger than root then reorder   heap.

Example : 

Min heap Max heap

Complexity :
-O(1) for search First Minimum/Maximum.
-To get second Min/Max we need to Delete Min/Max element reordering takes O(log N) and again we can Find second Min/Max in O(1).
– To insert new Min/Max element takes O(log N)

Solution 2: Using Linked List or Queue.

Example :

Algorithm

Whenever new number x comes, check
if x < head -> data than  (in case of 0 here)
   create node Temp
   Temp->next = head
   Temp = Head.
   remove rear (to keep K size constant)
else of  x < rear -> data than (in case of 2 here)
   create new Temp node
   traverse link list and put Temp at appropriate node (insert)
   remove rear (to keep K size constant)

Same solution can be applied for K Max

Time Complexity
O(1) To get Min/Max
O(K) To get K Min/Max
O(K) To reorder at each time.

-IF YOU LIKE OUR EFFORT, PLEASE LIKE AND SHARE OUR FB-PAGE AND SITE

Similar Articles

Filed Under: Adobe Interview Questions, Amazon Interview Question, Interview Questions, Microsoft Interview Questions, problem Tagged With: Linked List, Max Heap, Min Heap

Reader Interactions

Primary Sidebar

Join WeekEnd Online/Offline Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

Join WeekEnd Online/Offline Batch from 4-April-2020

WhatsApp us

Secondary Sidebar

Custom Search

  • How I cracked AMAZON
  • LeetCode
  • Adobe
  • Amazon
  • Facebook
  • Microsoft
  • Hacker Earth
  • CSE Interview

Top Rated Questions

Flipkart Set 1 On Campus with Answers

Best Java Book | Top Java Programming Book for Beginners

System Design: Designing a LLD for Hotel Booking

Maximum path sum between two leaves

How Radix sort works

LeetCode : Word Search

Add Sub Multiply very large number stored as string

Doubly linked list

Cisco Hiring Event 21st – 22nd Feb 2015

Find min element in Sorted Rotated Array (With Duplicates)

Find Percentage of Words matching in Two Strings

Find the smallest window in a string containing all characters of another string

Stock Buy Sell to Maximize Profit

1014 Practice Question of New GRE – Princeton

Adobe Interview Questions 8 month Exp

Binary Tree in Java

N teams are participating. each team plays twice with all other teams. Some of them will go to the semi final. Find Minimum and Maximum number of matches that a team has to win to qualify for finals ?

FizzBuzz Solution C C++

Difference between a LinkedList and a Binary Search Tree BST

CodeChef’ RRCOPY

Sort Stack in place

Trie Dictionary

Possible sizes of bus to carry n groups of friends

Spanning Tree

Connect n ropes with minimum cost

Singly linked list

Printing intermediate Integers between one element & next element of array

Search element in a matrix with all rows and columns in sorted order

Minimum insertions to form a palindrome

Linked List V/S Binary Search Tree

Copyright © 2025 · Genesis Framework · WordPress · Log in