Mega Code Archive

 
Categories / VB.Net / Data Structure
 

Binary SearchObject who implements the IComparable

Imports System Public Class MainClass          Shared Sub Main(ByVal args As String())         Dim student(4) As Student         student(0) = New Student("A", "A")         student(1) = New Student("B", "A")         student(2) = New Student("C", "B")         student(3) = New Student("D", "B")         student(4) = New Student("E", "C")         ' Sort.         Array.Sort(student)         ' Find E C         Dim target_student As New Student("E", "C")         Dim target_index As Integer = Array.BinarySearch(student, target_student)         target_student = student(target_index)         Console.WriteLine(target_student.ToString)     End Sub End Class    Public Class Student     Implements IComparable     Public FirstName As String     Public LastName As String     Public Sub New(ByVal first_name As String, ByVal last_name As String)         FirstName = first_name         LastName = last_name     End Sub     Public Overrides Function ToString() As String         Return LastName & ", " & FirstName     End Function     Public Function CompareTo(ByVal obj As Object) As Integer _      Implements System.IComparable.CompareTo         Dim other_Student As Student = DirectCast(obj, Student)         Return String.Compare(Me.ToString, other_Student.ToString)     End Function End Class