2015-01-14 2 views
0

이 같은 목록의 목록이 있습니다파이썬은 입력 겹치지 않는 경우 배열의 요소를 찾아 서로 내

data [["m1",10,30,10**-10],["m2",22,40,10**-9],["m3",30,50,10**-8],["m4",45,65,10**-7]] 

입력은 다음과 같습니다

[10,20] 

내가 원하는을 1) 입력 좌표와 오버랩하지 않는 요소들의리스트를 얻기 위하여, 2) I 오버랩하고있는 경우, 서로

1)  ["m2",22,40,10**-9],["m3",30,50,10**-8],["m4",45,65,10**-7] 

중첩되지 않는다 그래서 최종 출력이 오버랩 기능을 수행

["m2",22,40,10**-9],["m4",45,65,10**-7] 

될 것입니다하지만이 출력을 얻을하는 방법을 알 수없는 가장 마지막 열

를 가진 요소를 선택해야합니다.

+0

에 항목 2를 추가하여 입력에 대한 출력 설명 그렇지 않으면 당신의 질문을 수정하십시오 그렇지 않으면 더 많은 downvotes을 초대합니다 – sashas

+1

@sasha 지금은 더 분명해지기를 바랍니다 – AWRAM

+1

두 값의 비트 XOR을 계산하는 것과는 대조적으로 각 요소의 마지막 열은 작은 부동 소수점 수로 평가됩니다. 파이썬에서'^'의)? 그렇다면 표기법은 '10 ** - 10', '10 ** - 8' 등이어야합니다. – rchang

답변

0

그래서 내가 겹치는 부분을 확인하는 방법을 알고 있다고 가정하면 원하는 알고리즘을 만들었습니다.

  • 아이템 입력

    으로

  • 체크 중첩되지 않는 경우, 데이터의 각 항목 1에 대한 최종 결과
  • 의 arrray 정의하면 있음 - 최종 결과 각 항목 2 - item1이 item2와 겹쳐 지는지 확인하십시오.

    다음과 같은 경우 : - 최종 결과에 item1을 추가하십시오. 예 경우 : - 체크하면 마지막 값보다 작은 항목 2의 마지막 값 항목 1 경우 예 : - 최종 목록에서 항목 1을 제거 - 최종 목록

관련 문제