Exemplo n.º 1
0
    void downToUpInsert(IPuzzleLayer layer)
    {
        for (var i = 0; i < layers.Count; ++i)
        {
            var L = layers[i];
            if (layer.GetPiecesCount() > L.GetPiecesCount()) // 比這層大,就插入
            {
                layers.Insert(i, layer);
                return;
            }
        }

        layers.Insert(layers.Count, layer);
    }
Exemplo n.º 2
0
    void upToDownInsert(IPuzzleLayer layer)
    {
        var startIndex = layers.Count - 1;

        for (var i = startIndex; i >= 0; --i)
        {
            var L = layers[i];
            if (layer.GetPiecesCount() <= L.GetPiecesCount()) // 比這層小,就插入
            {
                var insetIndex = i + 1;
                layers.Insert(insetIndex, layer);
                return;
            }
        }

        //比所有的都大
        var head = 0;

        layers.Insert(head, layer);
    }