How to select N reservoir items randomly from a list in VB.NET

1 Answer

0 votes
Imports System
Imports System.Linq
Imports System.Collections.Generic

Public Class Program
    Public Shared Sub Main(ByVal args As String())
        Dim list = New List(Of Integer) From {4, 9, 14, 96, 13, 0, 3, 99, 19, 2, 80, 1, 7}
        Dim N As Integer = 5
        
		Dim rand As Random = New Random()
		
        Dim reservoir = list.OrderBy(Function(x) rand.[Next]()).Take(N)
	
        Console.WriteLine(String.Join(" "c, reservoir))
    End Sub
End Class





' run:
'
' 99 0 80 19 1
'

 



answered Feb 3, 2024 by avibootz

Related questions

2 answers 179 views
2 answers 223 views
1 answer 129 views
1 answer 169 views
2 answers 175 views
...