Forum » Programiranje » 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:
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 ...
| Tema | Ogledi | Zadnje sporočilo | |
|---|---|---|---|
| Tema | Ogledi | Zadnje sporočilo | |
| » | C# program za pretvorbo v desetiško število z rekurzijoOddelek: Programiranje | 1635 (1358) | MrStein |
| » | križci krožci c # (strani: 1 2 )Oddelek: Programiranje | 13395 (12054) | Yacked2 |
| » | [C#] Domača naloga za faksOddelek: Programiranje | 2348 (1972) | Spura |
| » | [C#] Input string was not in a correct format.Oddelek: Programiranje | 1199 (1136) | Cvenemir |
| » | [C#] Reševanje domačih nalogOddelek: Programiranje | 3532 (3036) | krastača |