Number doesn't get printed

using System;
public class HelloWorld
{
    public static void Main(string[] args)
    {
        Solution s = new Solution();
        int[] firstArr = {1,2,3,4,5,7,9,10};
        int[] secondArr = {13,15,17,21,22,23};
        s.FindMedianSortedArrays(firstArr, secondArr);
    }
}
public class Solution {
    public double FindMedianSortedArrays(int[] nums1, int[] nums2) {
        int [] _nums1 = nums1;
        int [] _nums2 = nums2;
        int index1 = 0;
        int index2 = 0;
        int _nums1LastValue = _nums1[_nums1.Length-1];
        int _nums2LastValue = _nums2[_nums2.Length-1];
        int[] mergedArray = new int[_nums1.Length+_nums2.Length];
        while(true){
            if(_nums1[index1] <= _nums2[index2]){
                mergedArray[index1+index2] = _nums1[index1];
                index1++;
                if(index1 > _nums1.Length - 1){
                    index1 = _nums1.Length-1;
                    _nums1[index1] = 999999;
                }
            }
            else{
                mergedArray[index1+index2] = _nums2[index2];
                index2++;
                if(index2 > _nums2.Length - 1){
                    index2 = _nums2.Length-1;
                    _nums2[index2] = 999999;
                }
            }
            if(_nums1[index1] == 999999 && _nums2[index2] == 999999){
                _nums1[index1] = _nums1LastValue;
                _nums2[index2] = _nums2LastValue;
                foreach(int i in mergedArray){
                    System.Console.WriteLine(i);
                }                
                
                if(mergedArray.Length%2==0){
                    return Convert.ToDouble(mergedArray[(mergedArray.Length - 1)/2] + mergedArray[(mergedArray.Length)/2])/2;
                }
                else{
                    return mergedArray[(mergedArray.Length-1)/2];
                }
            }
        }
        
    }
}
Was this page helpful?