Оба объекта одинаковы ... вы предоставляете только указатель на этот изменяемый массив в оба словаря, поэтому при удалении одного из них также удаляется другой ... вам нужно сохранить копию этого массива в вашем словаре ... Надеюсь, что это поможет.
вы можете добавить массив следующим образом .. (мне кажется, вы хотите глубокую копию)
NSMutableArray *newArrayOne = [[NSMutableArray alloc] initWithArray:tempC copyItems:YES];
[self.myList setObject:newArrayOne forKey:keyV];
[newArrayOne release];
NSMutableArray *newArrayTwo = [[NSMutableArray alloc] initWithArray:tempC copyItems:YES];
[self.listFiltered setObject:newArrayTwo forKey:keyV];
[newArrayTwo release];
таким образом, там хранятся два разных объекта ... это не самый оптимизированный код ... просто чтобы вы поняли, что на самом деле происходит за кулисами.