Reddit (오픈 소스) 알고리즘을 사용하는 웹 응용 프로그램을 빌드하려고합니다.이 파이썬 코드를 어떻게 ColdFusion 코드로 변환 할 수 있습니까?
시간이 지남에 따라 조정할 계획이지만 현재로서는 순위 시스템을 사용하는 것이 좋은 시작일 것입니다.
이 알고리즘에 대한 블로그 게시물을 읽었으며 예제는 Python으로 작성되었습니다. 어떻게 이것을 ColdFusion에서 사용할 수 있도록 변환 할 수 있습니까? 더 쉬운 CFC 사용시 추가 보너스 포인트?
코드 :
#Rewritten code from /r2/r2/lib/db/_sorts.pyx
from datetime import datetime, timedelta
from math import log
epoch = datetime(1970, 1, 1)
def epoch_seconds(date):
"""Returns the number of seconds from the epoch to date."""
td = date - epoch
return td.days * 86400 + td.seconds + (float(td.microseconds)/1000000)
def score(ups, downs):
return ups - downs
def hot(ups, downs, date):
"""The hot formula. Should match the equivalent function in postgres."""
s = score(ups, downs)
order = log(max(abs(s), 1), 10)
sign = 1 if s > 0 else -1 if s < 0 else 0
seconds = epoch_seconds(date) - 1134028003
return round(order + sign * seconds/45000, 7)
이 코드에 대해 이야기 블로그 게시물 : http://amix.dk/blog/post/19588
몇 가지 아이디어와 사례를 듣고 기대.
감사합니다. 마이클.
또한 추가 질문으로; 이 코드는 데이터 세트가 이미 수집 된 이후에 ColdFusion에서 SQL 쿼리 또는 일종의 정렬을 통해 더 잘 수행 될 수 있습니까? ? 내 DB는 MySQL이 될 것입니다.
업데이트 : 내가 물었던 것과 관련된 여기에 또 다른 질문이 있습니다. 도움이된다고 생각합니다. How are Reddit and Hacker News ranking algorithms used?
나는 다만 묻고 싶다; 데이터 세트가 이미 수집 된 후 SQL에서 가장 잘 된 것이거나 CF로 정렬하는 것이 최선의 선택일까요? 귀하의 의견을 진심으로 도와 주셔서 감사합니다. –
그것은 다른 곳에서 정렬이 사용되는지 여부에 따라 달라집니다. 그렇다면 CF 함수를 사용하는 것이 SQL에서 더 바람직 할 것입니다. – jamesTheProgrammer
이 질문은 programmers.stackexchange.com으로 옮길 수있었습니다. – jamesTheProgrammer