की छोटी सूचियों में एक सूची को विभाजित करें मैं सूची को छोटी सूचियों की एक श्रृंखला में विभाजित करने का प्रयास कर रहा हूं।एन आकार
मेरी समस्या: सूचियों को विभाजित करने के लिए मेरा कार्य उन्हें सही आकार की सूचियों में विभाजित नहीं करता है। इसे उन्हें आकार 30 की सूचियों में विभाजित करना चाहिए, बल्कि इसके बजाय उन्हें आकार 114 की सूचियों में विभाजित करना चाहिए?
मैं अपने फ़ंक्शन को आकार 30 या उससे कम की सूची की एक्स संख्या में एक सूची कैसे विभाजित कर सकता हूं?
public static List<List<float[]>> splitList(List <float[]> locations, int nSize=30)
{
List<List<float[]>> list = new List<List<float[]>>();
for (int i=(int)(Math.Ceiling((decimal)(locations.Count/nSize))); i>=0; i--) {
List <float[]> subLocat = new List <float[]>(locations);
if (subLocat.Count >= ((i*nSize)+nSize))
subLocat.RemoveRange(i*nSize, nSize);
else subLocat.RemoveRange(i*nSize, subLocat.Count-(i*nSize));
Debug.Log ("Index: "+i.ToString()+", Size: "+subLocat.Count.ToString());
list.Add (subLocat);
}
return list;
}
अगर मैं आकार 144 की सूची पर फ़ंक्शन का उपयोग करें तो उत्पादन होता है:
सूचकांक: 4, आकार: 120
सूचकांक: 3, आकार: 114
सूचकांक: 2 , आकार: 114
सूचकांक: 1, आकार: 114
सूचकांक: 0, आकार: 114
एक LINQ समाधान स्वीकार्य है, तो [इस सवाल का कुछ मदद की हो सकती है] (http://stackoverflow.com/questions/419019/split -List-में-उप-सूचियों-साथ-LINQ)। –
विशेष रूप से सैम केसर के पिछले प्रश्न पर इसका जवाब। और जब तक यह एक स्कूल असाइनमेंट के लिए नहीं है, मैं बस उसके कोड का उपयोग और बंद करूँगा। – jcolebrand