Skip to content
This repository has been archived by the owner on Jul 10, 2024. It is now read-only.

Write a Haskell program to implement ternary search #5116

Closed
harshraj8843 opened this issue Jan 9, 2024 · 2 comments · Fixed by #5625
Closed

Write a Haskell program to implement ternary search #5116

harshraj8843 opened this issue Jan 9, 2024 · 2 comments · Fixed by #5625
Assignees
Labels
closed closed issues/PRs good first issue Good for newcomers Haskell haskell related program

Comments

@harshraj8843
Copy link
Contributor

Description

Write a Haskell program to implement ternary search

Ternary search is a divide and conquer algorithm that can be used to find an element in an array. It is similar to binary search where we divide the array into two parts but in this algorithm, we divide the given array into three parts and determine which has the key (searched element).

Pseudocode

procedure ternary_search
   A ← sorted array
   value ← value to be searched
   l ← leftmost index
   r ← rightmost index
   
   while l ≤ r do
   
      partition size = (r-l)/3
      mid1 = l + partition_size
      mid2 = r - partition_size
      
      if A[mid1] = value
         return mid1
         
      if A[mid2] = value
         return mid2
         
      if value < A[mid1]
         set r = mid1 - 1
         
      else if value > A[mid2]
         set l = mid2 + 1
         
      else
         set l = mid1 + 1
         set r = mid2 - 1
         
   end while
   
   return -1
end procedure

Example

list = [1,2,3,4,5]
value = 4

Output : 3
How to contribute
  • Comment !assign to assign this issue to yourself
  • Fork this repository
  • Create a new branch
  • Save the solution in program/program/implement-ternary-search/implement_ternary_search.hs
  • Commit the changes
  • Create a pull request
@harshraj8843 harshraj8843 added good first issue Good for newcomers Haskell haskell related program labels Jan 9, 2024
@codinasion-bot
Copy link

codinasion-bot bot commented Jan 9, 2024

👋🏻 Hey @harshraj8843

💖 Thanks for opening this issue 💖

A team member should be by to give feedback soon.

@codinasion-bot codinasion-bot bot added the triage Waiting for review label Jan 9, 2024
@David-FR
Copy link
Contributor

David-FR commented Apr 7, 2024

!assign

@codinasion-bot codinasion-bot bot added closed closed issues/PRs and removed triage Waiting for review labels Apr 11, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
closed closed issues/PRs good first issue Good for newcomers Haskell haskell related program
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants