» »

Bisekcija C# težava

Bisekcija C# težava

tkonko ::

Pozdravljeni... Na faxu mam 1 nalogo, katero ne znam razrešit, gre za iskanje po urejenem polju s pomočjo binary searcha. Binary search mi je jasen, če iščem znano število, v mojem primeru pa mi ni jasno kako poiščem prvo število, ki ustreza pogoju A[i]==i. 1 nalogo sem rešil kot vidite v kodi, 2. pa je ta problematična, zato prosim za pomoč...

Navodilo:
Predpostavimo, da je A[1..n] polje n različnih celih števil in da so števila urejena, tako da velja
A[0] < A[1] < A[2] < .. < A[n].
Vsako število je lahko negativno, pozitivno ali 0.

1) Napiši funkcijo isci(), ki v podanem polju poišče in vrne (prvo) število i , da velja A[i] == i, ali vrne -1, če števila ni; funkcija naj ima časovno zahtevnost O( n ).

2) Napiši funkcijo isci_hitro(), ki v podanem polju poišče in vrne (prvo) število i, da velja A[i]==i, ali vrne -1, če števila ni; funkcija mora imeti manjšo časovno zahtevnost kot isci().


using System;

namespace vaja1
{
	class Program
	{
		static void Main(string[] args)
		{
			int[] polje = { -7, -3, -2, 0, 1, 3, 4, 7, 9, 20 };

            if (isci(polje) != 7)
                Console.WriteLine("napaka v algoritmu");
            else
                Console.WriteLine("testni vzorec OK");

			if ( isci_hitro(polje) != 7 )
				Console.WriteLine("napaka v algoritmu");
			else
				Console.WriteLine("testni vzorec OK");

            Console.Read();
		}

		static int isci(int[] A)
		{
            int i;
            for(i = 0; i < A.Length; i++)
            {
                if (A[i] == i)
                {
                    return i;
                }
            }
            return -1;
		}

        static int isci_hitro(int[] A)
		{

		}
	}
}


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

C# program za pretvorbo v desetiško število z rekurzijo

Oddelek: Programiranje
81502 (1225) MrStein
»

križci krožci c # (strani: 1 2 )

Oddelek: Programiranje
5011983 (10642) Yacked2
»

[C#] Domača naloga za faks

Oddelek: Programiranje
172116 (1740) Spura
»

[C#] Input string was not in a correct format.

Oddelek: Programiranje
61093 (1030) Cvenemir
»

[C#] Reševanje domačih nalog

Oddelek: Programiranje
173289 (2793) krastača

Več podobnih tem