안녕하십니까 형님들!
저는 이번에 컴공 대학원 들어온 연구생인데요
과제로
힐 크라이밍을 짜보라고 제출하고 있는데.. [로컬옵티멀에 빠지는 걸 확인해보라는 의미로]
예전에 제가 C 로 짰던걸 참고해서 python으로 바꿨더니..
oldcost = distance[route[i-1]][route[i]] + distance[route[j-1]][route[j]]
이 문장에서 시간이 이상하게 오래 걸리네요;;
distance[i][j] 는 i>j 로 가는 adjacency 매트릭스고..
route[i]는 현재 가지고 있는 path의 i번째 node를 가리키는 배열입니다.
c 였으면 30초안에 로컬 옵티말에 빠지는 데이터셋과 코든데;;;
파이썬을 몰라 삽질하고 있네요..
혹시 저 문장을 좀 더 효율적으로 표현하는 방법이 있을까요?
그 부분만 C로
그래서 뭐가 문제라는 거냐
음.; 사실 애들한테 줄 때는 저 부분을 지우고 여기 구현해! 라고 해야할 부분이거든요... 그래서 일반적인 파이썬 방법으로 짜면 로컬에 빠지는데 얼마나 걸리는지를 측정하려고 돌려보고 있는거에요.. 그래서 저기만 C로 짜기가 좀 그렇심다 ㅠㅠ
저게 python에서 잘 안 쓰는 표현이라 저 문장이 오래걸리는건지.. 아니면 그냥 원래 저런 참조에 오래 걸리는건지 잘 몰라서요 ㅎㅎ
대학원 다니시는 횽이 왜 울한테 물어봐
튜플인지 리스트인지 딕셔너리인지 정도는 말하고 뭐라해야,, 다 리스트겠지만,,
관노형// 아 그렇구나 리스트야 형 ㅠㅠ 미안.... 다쓰형// 이론만 좋아라 파다 대학원 오니까.. 프로그래밍에서 너무 힘드넼ㅋㅋ
느려서 파송합니다 ㅜㅜ
https://wiki.python.org/moin/PythonSpeed